前言:
现时你们对“c语言键盘输入数组”大约比较注意,各位老铁们都想要分析一些“c语言键盘输入数组”的相关文章。那么小编在网摘上收集了一些对于“c语言键盘输入数组””的相关知识,希望同学们能喜欢,朋友们快快来学习一下吧!闲来无事,做做别人家的期末试题,没有答案,自己做的,可能有错,欢迎指正。
【单选题】
#include <stdio.h>void fun(int *s, int n1,int n2) { int i,j,t; i=n1; j=n2; while(i<j) {t=s[i];s[i]=s[j];s[j]=t;i++;j--;} } main() { int a[10]={1,2,3,4,5,6,7,8,9,0},k; fun(a,0,3); fun(a,4,9); fun(a,0,9); for(k=0;k<10;k++)printf("%d",a[k]); printf("\n"); }
程序的运行结果是()。
【单选题】【单选题】【单选题】【单选题】【单选题】【单选题】【单选题】【单选题】【单选题】【单选题】【判断题】
char s1[10]; s1[0]='h'; s1[1]='a'; s1[2]='\0';与 char s2[10]="ha";
两段语句效果有区别:
s1数组中除前3个字符外,后面有不确定字符,而s2数组中10个字符是确定的。
【判断题】
数组所占内存单元的大小等于所有元素占用内存单元大小之和。
【判断题】
给一维数组初始化时,可以直接给数组名赋值。
【判断题】
变量的地址,称变量的指针。
【填空题】
如果只用一个下标变量完成逆置,写出程序。
main(){int a[10]={1,2,3,4,5,6,7,8,9,10},i,t; for(i=0;i<______;i++) { t=a[i]; a[i]=________; a[9-i]=t;} for(i=0;i<10;i++) printf("%d ",a[i]);}【填空题】
以下函数的功能是删除字符串s中的所有数字字符。请填空。
void dele(char*s){ int n=0,i; for(i=0;s[i];i++) if(s[i]<'0'||s[i]>'9')s[n++]=s[i];s[n]= ; }【填空题】
以下程序的输出结果为
#include <conio.h>#include <stdio.h>int fun(int *s, int t, int *k) { int i; *k=0; for(i=0;i<t;i++) if(s[*k]<s[i]) *k=i; } main() { int a[10]={ 876,675,896,101,301,401,980,431,451,777},k; fun(a, 10, &k); printf("%d, %d\n",k,a[k]);}【填空题】
如输入q1s3a28回车,则程序结果是:
# include<stdio.h>int main(void){ int i, number; char str[10]; /* 输入字符串 */ printf("Enter a string: "); i = 0; while((str[i] = getchar( )) != '\n') i++; str[i] = '\0'; number= 0; for(i = 0; str[i] != '\0'; i++) if(str[i] >= '0' &&str[i]<='9') number=number*10+str[i]-'0'; printf("%d\n",number); return 0;}【填空题】
输入q1w1ra#后回车,写出程序运行结果。
# include<stdio.h>int main(void){ int i,k; char hexad[80],str[80]; long number; printf("Enter a string: "); i = 0; while((str[i] = getchar( )) != '#') i++; str[i] = '\0'; k= 0; for(i = 0; str[i] != '\0'; i++) if(str[i]>='0'&&str[i]<='9'||str[i]>='a'&&str[i]<='f'||str[i]>='A'&&str[i]<='F'){ hexad[k] = str[i]; /* 放入新字符串 */ k++; } hexad[k] = '\0'; /* 新字符串结束标记 */ for( i= 0; hexad[i] != '\0'; i++) putchar(hexad[i]); number = 0; for(i = 0; hexad[i] !='\0'; i++){ /* 逐个转换 */ if(hexad[i] >= '0' &&hexad[i] <= '9') number = number * 16 + hexad[i] - '0'; else if(hexad[i] >= 'A' &&hexad[i] <= 'F') number = number * 16 + hexad[i] - 'A' + 10; else if(hexad[i] >= 'a' &&hexad[i] <= 'f') number = number * 16 + hexad[i] - 'a' + 10; } printf("%ld\n",number); return 0;}【填空题】
以下程序将键盘以'#'为结束符的字符串提取出其中的数字字符('0'、...、‘9’),将其转换为十进制整数输出,如输入:s34de56#<回车>后,结果显示:digit=3456,请在空缺处填空。
# include<stdio.h>int main(void){ int i, number; char str[20]; printf("Enter a string: "); i = 0; while(( ) != '#') i++; str[i] = '\0'; number= 0; for(i = 0; str[i] != '\0'; i++) if(str[i] >= '0' &&str[i]<='9') number=( ) +( str[i]-48 ) ; printf("digit=%d\n",number); return 0;}【填空题】
程序运行结果是
# include <stdio.h>int main (void){ int a = 1, b = 2; int *pa = &a, *pb = &b; void swap3 (int *px, int *py); swap3(pa, pb); /* 使用指针pa,pb调用swap3() */ printf ("a=%d b=%d", a, b); return 0;}void swap3 (int *px, int *py){ int *pt; pt =px; px = py; py = pt;}【填空题】
以下程序的输出结果是
int main (void){int a[4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14,},{15,16,17,18}};int i=0,j=0,s=0;while (i++<4){if (i==2||i==4) continue; j=0; do {s+=a[i][j];j++;} while (j<4); } printf ("%d\n",s); return 0; }【填空题】
下列程序的输出结果是
main(){int i, j, row, column,m;static int array[3][3]={{100,200,300},{28,72,-30},{-850,2,6}};m=array[0][0];for (i=0; i<3; i++)for (j=0; j<3; j++)if (array[i][j]<m){ m=array[i][j]; row=i; column=j;}printf("%d,%d,%d\n",m,row,column);}【填空题】
以下程序从键盘读入20个数据到数组中,统计其中正数的个数,并计算它们之和,请填空。
int main(void){ int i,a[20],sum,count;sum=count=0;for(i=0; i<20; i++) scanf("%d",____);for(i=0; i<20; i++)if(a[i]>0){ count++;sum+=____;}printf ("sum=%d,count=%d\n",sum,count);return 0;}【填空题】
以下是个评分统计程序,共有8个评委打分,统计时,去掉一个最高分和一个最低分,其余6个分数的平均分即最后得分,程序最后应显示这个得分,显示精度为2位小数,程序如下,请填空。
int main(void){ float x[8] ={9,2,9,5,9,8,7,4};float aver=0,max,min; int i;for(i=0;i<8;i++) ____;max=x[0]; min=x[0];for(i=0; i<8; i++){ if(max <x[i]) max=x[i];if(min >x[i]) min=x[i]; }aver=(aver-max-min)/6;printf ("Average %.2f\n",aver);return 0;}【填空题】
以下程序的功能是输入一个正整数n(1<n≤10),然后输入n个整数,将他们存入数组a中,再输入一个数x,然后在数组中查找x,如果找到,输出相应的最小下标,否则,输出"Not found"。请填空。
int main(void){ int i, index, n, x,a[10];scanf("%d", &n);for(i=0; i<n; i++) scanf("%d", ____) ;scanf("%d", &x);____;for(i=0; i<n; i++)if(a[i]==x){ index=i; break;}if(index!=-1)printf(" %d\n", index);elseprintf(" Not found \n");return 0; }
参考答案:
1-5:BDCCD
6-11:DADDBA
12-15:对对错对
16:第一空 10 第二空 a[9-i]
17:'\0'
18:6, 980
19:1328
20:11a282
21:第一空 str[i]=getchar() 第二空 number*10
22:a=1 b=2
23:92
24:-850,2,0
25:第一空 &a[i] 第二空 a[i]
26:aver+=x[i]
27:第一空 &a[i] 第二空 index=-1
标签: #c语言键盘输入数组