第3套
已知數據文件in3.dat中存有200個四位數,并已調用讀函數readDat()把這些數存入數組a中,請考生編制一函數jsVal(),其功能是:依次從數組a中取出一個四位數,如果該四位數連續大于該四位數以后的5個數且該數是奇數,則統計出滿足此條件的個數cnt并把這些四位數按從小到大的順序存入數組b 中,最后調用寫函數writeDat()把結果cnt以及數組b中符合條件的四位數輸出到out3.dat文件中。
注意:部分程序已經給出。
程序中已定義數組:a[200],b[200],已定義變量:cnt。
請勿改動數據文件in.dat中的任何數據、主函數main()、讀函數readDat()和寫函數writeDat()的內容。
第4套
編寫一個函數findStr(),該函數統計一個長度為2的子字符串在另一個字符串中出現的次數。例如,假定輸入的字符串為"asdasasdfgasdaszx67asdmklo",子字符串為"as",函數返回值是6。
函數ReadWrite()實現從文件in4.dat中讀取兩個字符串,并調用函數findStr(),最后把結果輸出到文件out4.dat中。
注意:部分程序已經給出。
請勿改動主函數main()和其他函數中的任何內容,僅在函數findStr()的花括號中填入你編寫的若干語句。
#include<stdio.h>
#include<string.h>
#include<conio.h>
int findStr(char *str,char *substr)
{
}
main()
{
char str[81],substr[3];
int n;
clrscr();
printf("enter the original string:");
gets(str);
printf("enter an substring:");
gets(substr);
puts(str);
puts(substr);
n=findStr(str,substr);
printf("n=%d\n",n);
ReadWrite();
}
ReadWrite()
{
char str[81],substr[3],ch;
int n,len,i=0;
FILE *rf,*wf;
rf=fopen("in4.dat","w");
wf=fopen("out4.dat","w");
while(i<5)
{
fgets(str,80,rf);
fgets(substr,10,rf);
len=strlen(substr)-1;
ch=substr[len];
if(ch=='\n')substr[len]=0;
n=findStr(str,substr);
fprintf(wf,"%d\n",n);
i++;
}
fclose(rf);
fclose(wf);
}
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |