作業請寄到 pyting@ind.ntou.edu.tw
主題請註明 91資管學號EXXXXXXXXX作業X
以附件方式將 zip 起來的檔案傳送給我
const 的應用
#include <stdio.h>
int calculateSum(int num, const int data[]);
int calculateProd(int num, const int data[]);
void main()
{
int data[] = {1,2,3,4,5};
int sum, prod;
sum = calculateSum(5, data);
prod = calculateProd(5, data);
printf("Sum = %d\n", sum);
printf("Product = %d\n", prod);
}
int calculateSum(int num, const int data[])
{
int i;
int sum = 0;
for (i=0; i<num; i++)
sum += data[i];
return sum;
}
int calculateProd(int num, const int data[])
{
int i;
int prod = 1;
for (i=0; i<num; i++)
prod *= data[i];
return prod;
}
檔案開啟與基本讀取
#include <stdio.h>
void main()
{
int sum=0;
int i, data;
FILE *fp;
fp = fopen("test29.dat", "r");
for (i=0; i<10; i++)
{
fscanf(fp, "%d", &data);
sum += data;
}
fclose(fp);
printf("Sum = %d\n", sum);
}
基本寫檔案測試
#include <stdio.h>
void printPerm(FILE *fp, int n, int data[]);
void main()
{
...
FILE *fp;
char filename[50];
printf("Please input a filename? ");
scanf("%s", filename);
fp = fopen(filename, "w");
if (fp==0)
{
printf("There is error in opening the file: %s\n", filename);
return;
}
printPerm(fp, n, data);
while (1)
{
...
printPerm(fp, n, data);
}
fclose(fp);
}
void printPerm(FILE *fp, int n, int data[])
{
int i;
for (i=0; i<n; i++)
fprintf(fp, "%d ", data[i]);
fprintf(fp, "\n");
}
字串反轉, 字串長度, 字串轉換
#include <string.h>
#include <stdio.h>
void main()
{
char data1[] = "123456789";
char data2[] = {'3', '2', '1', '0', 0};
int i, length;
length = strlen(data1);
strrev(data1);
printf("The length of the string is %d\n", length);
printf("data1::%s\n", data1);
for (i=0; i<(int)strlen(data2); i++)
data1[length-i-1] = (data1[length-i-1]-'0') +
(data2[strlen(data2)-i-1]-'0') + '0';
printf("data1::%s\n",data1);
}