c语言编程项目
A. 编写一个c语言程序,实现录入学生学号和姓名信息的功能
#include<stdio.h>
#include<stdlib.h>
intmain(void)
{
chars[10];//姓名
intnum;//学号
printf("请输入姓名: ");
gets(s);
printf("请输学号: ");
scanf("%d",&num);
printf("姓名是:%s 学号是:%d ",s,num);
system("pause");
return0;
}
(1)c语言编程项目扩展阅读
c语言建立学生档案
#include<stdio.h>
#include<string.h>
结构学生
{
整数
字符名称[10];
智
intEng;
垫子;
};
//s_number-检索的学号
//numebr-文档已经存储的学号
//按学号查找
布尔搜索(chars_New[],charNew[])
{
如果(strcmp(s_New,New))
{
返回true;//查找成功
}
其他
{
returnfalse;//查找失败
}
}
无效menu()
{
printf(“----------------------------------------------------------- “);
printf(“菜单: ”);
printf(“ 1。建立学生档案 ”);
printf(“ 2。读取所有学生记录 ”);
printf(“ 3。在文件尾添加学生记录 ”);
printf(“ 4。查询学生姓名 ”);
printf(“ 5。结束程序 ”);
printf(“----------------------------------------------------------- “);
}
无效menu_2()
{
printf(“----------------------------------------------------------- “);
printf(“查找选择菜单: ”);
printf(“ 1。按名字查找 ”);
printf(“ 2。按学号查找 ”);
printf(“请选择: ”);
printf(“----------------------------------------------------------- “);
}
intmain()
{
而(1)
{
菜单();
法官
printf(“请输入你的选项:”);
判断=scanf(“%d”,&n);
如果(判断==0)
{
printf(“输入格式错误! ”);
}
开关(n)
{
情况1:
{
FILE*pf=fopen(“Student.txt”,“w+”);
字符标志='Y';
while(flag=='Y'|flag=='y')
{
学生stu;//创建学生结构体
printf(“请输入学生的学号: ”);
scanf(“%d”,&stu.number);
getchar();//吃掉以上一个输入的回车符
printf(“请输入学生的姓名: ”);
scanf(“%s”,stu.name);
printf(“请输入学生的语文成绩: ”);
scanf(“%d”,&stu.Chi);
printf(“请输入学生的英语成绩: ”);
scanf(“%d”,&stu.Eng);
printf(“请输入学生的数学成绩: ”);
scanf(“%d”,&stu.Mat);
//把学生档案导入Student.txt文档
fprintf(pf,“#姓名:%s 学号:%d 语言成绩:%d 英语成绩:%d 数学成绩:%d ”,stu.name,stu.number,stu.Chi,stu.Eng,stu.Mat);
getchar();//吃掉以上一个输入的回车符
printf(“是否继续输入学生档案?(是或否) ”);
判断=scanf(“%c”,&flag);
如果(判断==0)
{
printf(“输入格式错误! ”);
}
}
fclose(pf);
打破;
}
B. c语言编程:输入两个正整数,求最大公约数和最小公倍数
#include
voidmain(){
inta,b,n1,n2,t;
while(true)
{
printf("任意输入两个正整数: ");
scanf("%d%d",&n1,&n2);
if(n1
{
t=n1;
n1=n2;
n2=t;
}
a=n1;
b=n2;
while(b!=0){/*利用辗除法,直到b为0为止*/
t=a%b;
a=b;
b=t;
}
printf("最大公约数为:%d ",a);
printf("最小公倍数为:%d ",n1*n2/a);
}}
(2)c语言编程项目扩展阅读
C语言求最大公约数辗转相除法
#include<stdio.h>
intgcd(intm,intn);//将辗转相除的过程封装为函数,使主函数结构清晰。
intmain(void)
{
inta,b;
while(~scanf("%d%d",&a,&b)){//多组数据输入时的方式之一与while(scanf("%d%d",&a,&b)!=EOF)用途相同
printf("%d ",gcd(a,b));
return0;
}
intgcd(intm,intn)
{
returnn?gcd(n,m%n):m;//此函数将辗转相除的过程以递归的形式呈现,简化程序属于常规套路。
}