C语言程序设计2021年1月21日每日一练
单选题有以下程序: #include <stdio.h> #include
<string.h> typedef struct { char name[9]; char sex; int
score[2];} STU; STU f(STU a) { STU b={"Zhao",
'm', 85, 90}; int i; strcpy(a.name,
b.name); a.sex=b.sex; for(i=0; i<2; i++)
a.score[i]=b.score[i]; return a; }
main() { STU c={ "Qian", 'f', 95, 92 }, d;
d=f(c); printf("%s, %c, %d, %d,", d.name, d.sex,
d.score[0], d.score[1]); printf("%s, %c, %d, %d/n", c.name,
c.sex, c.score[0], c.score[1]); }
程序运行后的输出结果是______。
A.Zhao, m, 85, 90, Qian, f, 95, 92
B.Zhao, m, 85, 90, Zhao, m, 85, 90
C.Qian, f, 95, 92, Qian, f, 95, 92
D.Qian, f, 95, 92, Zhao, m, 85, 90
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。 例如,字符串中的内容为:“****A*BC*DEF*G*******”,删除后,字符串中的内容应当是:“****ABCDEFG”。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include void fun(char*a) { } main() {char s[81];void NONO(); printf(''Enter a string:\n'');gets(s); fun(s); printf(''The string after deleted:\n'');puts(s); NONO(); } void NONO() {/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE*in,*out; int i;char s[81]; in=fopen(''in.dat'',''r''); out=fopen(''out.dat'',''w''); for(i=0;i { fscanf(in,''%s'',s); fun(s); fprintf(out,''%s\n'',s); } felose(in); fclose(out); }
单选题以下程序的输出结果是______。 #include<stdio.h> main() int a=200; #define a 100 printf("%dd",
单选题已知字符A的ASCII代码值是65,字符变量c1的值是A,c2的值是D。则执行语句printf("%d,%d",c1,c2-2);的输出结果是______。
单选题以下选项中正确的语句组是______。
单选题有以下程序:
#include<stdio.h>
int fun()
{static int x=1;
x*=2;
return x;
}
main()
{int i, s=1;
for(i=1; i<=3; i++) s*=fun();
printf("%d/n", s);
}
程序运行后的输出结果是______。
下列叙述中正确的是( )。
单选题下列程序的执行结果是______。 print(int*b,int m) int i; for(i=0;i<m;i++) *b=i; b++; printf("%d/n",*--B) ; main() int a[5]=1,2,3,4,5; print(a,5);
问答题给定程序中,函数fun的功能是:找出形参s所指字符串中出现频率最高的字母(不区分大小写),并统计出其出现的次数。
例如,形参s所指的字符串为:abcAbsmaxless,程序执行后的输出结果为:
letter 'a' : 3 times
letter 's' : 3 times
请在程序的下划线处填入正确的内容并把下划线删除, 使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!
给定源程序:
#include
#include
#include
void fun(char *s)
{ int k[26]={0},n,i,max=0; char ch;
while(*s)
{ if( isalpha(*s) ) {
/**********found**********/
ch=tolower(__1__);
n=ch-'a';
/**********found**********/
k[n]+= __2__ ;
}
s++;
/**********found**********/
if(max
}
printf("/nAfter count :/n");
for(i=0; i<26;i++)
if (k[i]==max) printf("/nletter /'%c/' : %d times/n",i+'a',k[i]);
}
main()
{ char s[81];
printf("/nEnter a string:/n/n"); gets(s);
fun(s);
}
单选题若有定义语句:double a, *p= 以下叙述错误的是___________。