程序设计题(共 15 题)
1、在考生文件夹下,要求程序 PROG.C 的功能是: 2、在考生文件夹下,要求程序 PROG.C 的功能是:
求[1,1000]之间既不能被 7 整除也不能被 5 整除的 将字符串中所有的大写字母转换为小写,其它字 符不变(不使用转换函数) 。
例如,当字符串为 \
输出: \
#include
/***********begin***********/
int i=0;
while(str1[i]!='\\0') {
if (str1[i]>='A' && str1[i]<='Z')
str1[i]+=32; else; i++; }
else; /************end************/ }
void main() {
void NONO( );// 函数声明 char str1[80];
printf(\gets(str1); fun(str1);
printf(\NONO( ); }
void NONO( ) { FILE *fr,*fw;
int i; char s[80];
fr=fopen(\fw=fopen(\for(i=1;i<=2;i++) { fgets(s,80,fr); fun(s);
fprintf(fw,\fclose(fr); fclose(fw); }
整数之和,将结果存入变量
s 中。
#include \#include \#include \void main()
{
void NONO( int y);// 函数声明
int s;
int i;
/***********begin***********/
s=0;
for(i=1;i<=1000;i++) if(i%5!=0 && i%7!=0)
s=s+i;
/************end************/ printf(\NONO(s); }
void NONO( int y) { FILE
*f;
f=fopen(\fprintf(f,\fclose(f); }
- 28 -
3、在考生文件夹下,要求程序 PROG.C 的功能是: 统计字符串中元音字母’ a’、’e’、’i’、’o’、’u’
的个数并输出。
例如,当字符串为 \
输出: Result is: 4
#include
/***********begin***********/
int s=0,i=0;
while(str[i]!='\\0') {
if(str[i]=='a' || str[i]=='e' || str[i]=='i' || str[i]=='o' || str[i]=='u')
s++; i++; } return s;
/************end************/ }
void main() {
void NONO( );// 函数声明 char str1[80]; int n;
printf(\gets(str1); n=fun(str1);
printf(\NONO( ); }
void NONO( ) { FILE *fr,*fw;
int i; char s[80];
fr=fopen(\fw=fopen(\T\for(i=1;i<=5;i++) { fgets(s,80,fr);
fprintf(fw,\} fclose(fr); fclose(fw); }
4、在考生文件夹下,要求程序 PROG.C 的功能是:
统计字符串中英文字母的个数并输出。
例如,当字符串为 \
输出: Result is:15
#include
#include
/***********begin***********/
int i=0,s=0;
while(str1[i]!='\\0') {
if((str1[i]>='a'
&&
str1[i]<='z')
||
(str1[i]>='A' && str1[i]<='Z'))
s++;
i++;
} return s; /************end************/
}
void main() {
void NONO( );// 函数声明 char str1[80]; int n;
printf(\gets(str1); n=fun(str1);
printf(\NONO( ); }
void NONO( ) { FILE *fr,*fw;
int i; char s[80];
fr=fopen(\fw=fopen(\for(i=1;i<=5;i++) { fgets(s,80,fr);
fprintf(fw,\
} fclose(fr); fclose(fw);
} - 29 -
5、在考生文件夹下,给定程序 PROG.C 的功能是: fclose(fr); fclose(fw);
求 N*N 矩阵的第 2 行(以下标为行数) 元素的和并输出。
例如,当矩阵为:
}
1 5
2 6
3 7
4 8
9 10 11 12 13 14 15 16
则第 2行元素是:9,10,11,12。第 2行元素之和为:42 #include
/***********begin***********/
int s=0,i=0; for(i=0;i s=s+a[2][i]; return s; /************end************/ } void { void NONO( ); // 函数声明 int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; int i,j,sum; printf(\for(i=0;i for(j=0;j printf(\printf(\} sum=fun(a); printf(\:%d\\n\NONO( ); } void NONO( ) { FILE *fr,*fw; int i,j,x[N][N]; fr=fopen(\fw=fopen(\T\for(i=1;i<=5;i++) { for(j=0;j fscanf(fr,\ 4 int fun(int a[N][N]) main() fprintf(fw,\}