没有合适的资源?快使用搜索试试~ 我知道了~
C语言上机测试试题C语言上机测试试题.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 151 浏览量
2022-07-02
01:10:45
上传
评论
收藏 205KB DOC 举报
温馨提示
C语言上机测试试题 本文档是关于C语言上机测试试题的集合,涵盖了多个方面的知识点。下面是对每个试题的详细解释和知识点总结: 1. 判断某一天是这一年的第几天? 知识点:日期计算、switch语句、闰年判断 在这个试题中,需要使用switch语句来计算某月以前的总天数,然后加上某天的天数,并判断是否是闰年以确定总天数。 2. 字符串追加函数 知识点:字符串操作、函数设计 在这个试题中,需要设计一个字符串追加函数,使用while循环找到串结束符的位置,然后将第二个字符串追加到第一个字符串中。 3. 组成互不相同且无重复数字的三位数 知识点:多重循环、数字组合 在这个试题中,需要使用多重循环来组合四个数字,生成所有可能的三位数,并确保每个数字都是互不相同的。 4. 找出数组中的最大数 知识点:数组操作、循环遍历 在这个试题中,需要使用循环遍历数组,比较每个元素的值,并找出其中最大的数。 这些试题涵盖了C语言的多个知识点,包括日期计算、字符串操作、函数设计、多重循环和数组操作等。通过完成这些试题,学生可以熟悉C语言的基本语法和编程技术,并提高自己的编程能力。 在学习和完成这些试题时,学生需要注意以下几点: * 了解C语言的基本语法和数据类型 * 了解switch语句、循环遍历和数组操作的使用 * 了解字符串操作和函数设计的基本原则 * 了解多重循环和数字组合的使用 通过学习和完成这些试题,学生可以提高自己的编程能力和问题解决能力,并 lays a solid foundation for future programming studies.
资源推荐
资源详情
资源评论
学生学号 姓名 年级
采用每堂测试练习课每个学生随机抽取两道习题当堂做答,下来自己再进行相关补充及完善的方式。
抽样题目原题:
1. 1. 输入某年某月某日,判断这一天是这一年的第几天?
#include "stdio.h"
#include "conio.h"
main()
{
int day,month,year,sum,leap;
printf("please input year,month,day");
scanf("%d,%d,%d",&year,&month,&day);
switch(month) /*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:printf("data error");break;
}
sum=sum+day; /*再加上某天的天数*/
if(year%400==0||(year%4==0&&year%100!=0)) /*判断是不是闰年*/
leap=1;
else
leap=0;
if(leap==1&&month>2) /*如果是闰年且月份大于 2,总天数应该加一天*/
sum++;
printf("It is the %dth day.",sum);
}
总结及评定:
该生后经过三次修改,完整将试题答案做出,并上机调试通过。
2.编程序实现字符串追加函数。
#include<stdio.h>
#include<stdio.h>
int strcat1(char[] ,char[]);
main(){
char c1[10],c2[10];
gets(c1);
gets(c2);
strcat1(c1,c2);
puts(c1);
}
strcat1(char s1[],char s2[]){
int j=0,i=0;
while(s1[i++]); //找到串结束符的位置
i--;
while(s2[j])
{s1[i++]=s2[j++]}; //将串 s2 追加到 s1 中
s1[i]='\0';
}
总结及评定:
该生后经过一次修改,完整将试题答案做出,并上机调试通过。
2、学生学号 姓名 年级
采用每堂测试练习课每个学生随机抽取两-三道习题当堂做答,下来自己再进行相关补充及完善的方式。
抽样题目原题:
2. 1. 有 1,2,3,4 四个数字,能组成多少互不相同且无重复数字的三位数,都是多少?
#include "stdio.h"
#include "conio.h"
main()
{
int i,j,k;
printf("\n");
for(i=1;i<5;i++) /*以下为三重循环*/
for(j=1;j<5;j++)
for (k=1;k<5;k++)
{
if (i!=k&&i!=j&&j!=k) /*确保 i、j、k 三位互不相同*/
printf("%d,%d,%d\n",i,j,k);
}
}
总结及评定:
该生后经过两次修改,完整将试题答案做出,并上机调试通过。
2.从键盘上输入 4 个数,并存入数组中,然后找出其中最大的数并打印其值。
#include<stdio.h>
main()
{
int temp,i,j,a[4];
scanf("%d,%d,%d,%d",&a[0],&a[1],&a[2],&a[3]);
for (i=1;i<4;i++)
if(a[0]<a[i])
{temp=a[0];//交换 a[0]与 a[i]中的值
a[0]=a[i];
a[i]=temp;}
printf("%d,",a[0]);
}
总结及评定:
该生当堂调试通过,完整将试题答案做出。
C 上机测试题选 3
学生学号 姓名 年级
采用每堂测试练习课每个学生随机抽取两-三道习题当堂做答,下来自己再进行相关补充及完善的方式。
抽样题目原题:
1.编程序求
�� ������
!
1
!2
1
!1
1
1
n
e
的值
main(){
int i,j,n;
float e,f;
printf( “Please input N: ”);
scanf(“%d”,&n);
e=1.0;
for(i=1;i<=n;i++)
{
f=1;
for(j =1;j<=i;j++)
f=f*j;
e=e+1/f;
}
printf( “e=%f”,e);
}
总结及评定:
该生后经过一次修改,完整将试题答案做出,并上机调试通过。
2.输入一个五位数判断它是不是回文,如 12321 就是回文,
即万位和个位相同,千位和十位相同
#include "stdio.h"
main( )
{
long ge,shi,qian,wan,x;
scanf("%ld",&x);
wan=x/10000;
qian=x%10000/1000;
shi=x%100/10;
ge=x%10;
if(ge==wan && shi==qian)/*个位等于万位并且十位等于千位*/
printf("this number is a huiwen\n");
else
printf("this number is not a huiwen\n");
}
总结及评定:
该生当堂调试通过,完整将试题答案做出。
采用每堂测试练习课每个学生随机抽取两-三道习题当堂做答,下来自己再进行相关补充及完善的方式。
抽样题目原题:
1.利用 getch 函数,编写密码输入程序。
即:输入密码时,屏幕上不显示输入内容,而代之以“星号”之类的内容,
以防他人看到密码。
#include<stdio.h>
#include<conio.h>
main()
{
char c='\0';
printf("请输入密码:\n");
while(c!=13){
c=getch();
putchar('*');
}
putchar('\n');
}
总结及评定:
该生后当堂完整将试题答案做出,并上机调试通过。
2.从键盘上输入 4 个数,存入数组中,然后将 4 个数进行排序并输出。
#include<stdio.h>
main()
{
int temp,i,j,a[4];
scanf("%d,%d,%d,%d",&a[0],&a[1],&a[2],&a[3]);
for(j=0;j<3;j++)
for (i=j+1;i<4;i++)
if(a[j]<a[i])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
for(j=0;j<4;j++)
printf(“%d , ”,a[j]);
}
总结及评定:
该生当堂调试通过,完整将试题答案做出。
3.使用函数的办法求 x----y 之间的水仙花数,x,y 由键盘输入(100<=x<=y<=999)。
#include "stdio.h"
#include "conio.h"
int shuixian(int x,int y)
{ int i,j,k,n;
printf("'water flower'number is:");
for(n=x;n<y;n++)
{
i=n/100;/*分解出百位*/
j=n/10%10;/*分解出十位*/
k=n%10;/*分解出个位*/
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
printf("%-5d",n);
}
}
main()
{
inr x,y;
scanf(”%d,%d”,&x,&y);
shuixian(x,y);
}
总结及评定:
该生后经过一次修改,完整将试题答案做出,并上机调试通过。
学生学号 姓名 年级
采用每堂测试练习课每个学生随机抽取两道习题当堂做答,下来自己再进行相关补充及完善的方式。
抽样题目原题:
3. 1. 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
#include "stdio.h"
main()
{
char c;
int letters=0,space=0,digit=0,others=0;
printf("please input some characters\n");
while((c=getchar())!='\n')
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z')
letters++;
else if(c==' ')
space++;
剩余21页未读,继续阅读
资源评论
omyligaga
- 粉丝: 87
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功