一道简单C语言程序设计题

作者&投稿:衅昌 (若有异议请与网页底部的电邮联系)
一道大一c语言课程设计的题目,求大神~

免费给你一个,自己改改
#include
#include
#include
struct Student
{
char xuehao[100];
char name[100];
char sex[100];
int age;
float score;

};
void menu(int *n)
{
printf("*********************************************
");
printf("1.创建数据
");
printf("2.添加数据
");
printf("3.删除数据
");
printf("4.查找数据
");
printf("5.按成绩进行排序
");
printf("6.退出
");
printf("*********************************************
");
printf("请输入数字1-6:");
scanf("%d",n);
}
void scanfstudent(struct Student * p,int len)//输入学生的信息 学号 姓名 性别 年龄 得分
{
int i;
for(i = 0; i < len; i++)
{
printf("请输入第%d学生的信息:
",i+1);
printf("学号:");
scanf("%s",p[i].xuehao);
printf("姓名:");
scanf("%s",p[i].name);
printf("性别:");
scanf("%s",p[i].sex);
printf("年龄:");
scanf("%d",&p[i].age);
printf("得分:");
scanf("%f",&p[i].score);
printf("
");
}

}

void printfstudent(struct Student *p,int len)//对学生的信息进行输出
{
int i;
printf("学号姓名性别年龄分数

");

for (i = 0; i < len; i++)
{
printf("%s",p[i].xuehao);
printf("%s",p[i].name);
printf("%s",p[i].sex);
printf("%d",p[i].age);
printf("%.2f
",p[i].score);


}
}
void createdata(struct Student *p,int *len)
{
int n;

printf("请输入要创建数组的长度:");
scanf("%d",&n);
scanfstudent(p,n);
*len = n;
printfstudent(p,*len);

}
void add(struct Student *p,int *len)//增加一个学生的信息。并且按照顺序排列
{
// int i,j;

//int pos = 0;
int c = 1;
while(c == 1)
{
int mylen = *len;
struct Student st;
printf("请输入要添加学生的信息:
");
printf("学号:");
scanf("%s",st.xuehao);
printf("姓名:");
scanf("%s",st.name);
printf("性别:");
scanf("%s",st.sex);
printf("年龄:");
scanf("%d",&st.age);
printf("得分:");
scanf("%f",&st.score);
printf("
");

p[mylen] = st;
*len = mylen+1;
printfstudent(p,*len);
printf("
");
printf("是否继续添加?输入:
1.继续
2.退出
");
scanf("%d",&c);
}
}
void Sort(struct Student *p,int len)//按照分数从大到小排列选择排序法
{
struct Student st;
int i,j;
for(i = 0; i < len - 1; i++)
{
for(j = i + 1 ; j < len; j++)
if(p[i].score < p[j].score)
{
st = p[i];
p[i] = p[j];
p[j] = st;

}
}
printfstudent(p,len);
}

/*if(myp->score >= p[0].score)//
{

for(i = mylen; i > 0 ; i--)
p[i] = p[i-1];
p[0] = *myp;

}
else if(myp->score <= p[mylen-1].score)
{
p[mylen] = *myp;
}
*/
//else
//{
/*for(i = 0; i < mylen; i++)
{
if(myp->score >= p[i].score)
break;
}
pos = i;
for(j = mylen; j > pos; j--)
{
p[j] = p[j-1];
}
p[pos] = *myp;



*len = mylen+1;



}*/
void del(struct Student *p,int *len)//删除学生的信息
{
int i,j;
char p1[1024];
int c = 1;
while(c == 1)
{
int mylen=*len;
printf("请输入要删除学生的学号:");
scanf("%s",p1);
for(i = 0; i < *len; i++)
{
if(strcmp(p[i].xuehao,p1)==0)
break;
}
if(i == 0)//删除的是第一个元素
{
for(j = 0; j < (*len)-1; j++)
p[j] = p[j+1];
}
else if(i>0 && i<(*len)-1)//删除中间的元素
{

for(j = i;j<(*len) -1;j++)
p[j] = p[j+1];



}
else if(i == (*len)-1)
;
else
printf("error,学号输入有误!
");
*len =mylen-1;//数组长度减少一个
printfstudent(p,*len);
printf("
");
printf("是否继续删除?输入:
1.继续
2.退出
");
scanf("%d",&c);
}
}

void serch(struct Student *p,int len)//按学号或者姓名查找学生信息
{


int i,j;
int flat = 0;
char num[100];
char name1[100];
printf("请输入1或2,1按学号查找,2按姓名查找:");
scanf("%d",&i);

if(i == 1)
{
printf("请输入要查找的学号:");
scanf("%s",num);
for(j = 0; j <len; j++)
{
if(strcmp(p[j].xuehao,num) == 0)

{
flat ++;

break;
}

}
if(!flat)
{
printf("学号输入有误!
");
}
else
{
printf("学号:%s,姓名:%s,性别:%s,年龄:%d,得分:%.2f
",p[j].xuehao,p[j].name,p[j].sex,p[j].age,p[j].score);
}
}
else if(i == 2)
{
flat = 0;
printf("请输入要查找的姓名:");
scanf("%s",name1);
for(j = 0; j <len; j++)
{
if(strcmp(p[j].name,name1) == 0)
{
flat ++;
printf("学号:%s,姓名:%s,性别:%s,年龄:%d,得分:%.2f
",p[j].xuehao,p[j].name,p[j].sex,p[j].age,p[j].score);
break;
}


}
if(!flat)
{
printf("姓名输入有误!
");
}
}
}
/*int main(void)
{

int len;
int c;
//char c;
//char xuehao11[1024];
//struct Student *p;
//静态构造结构数组
struct Student p[1024];

printf("请输入学生的个数:");
scanf("%d",&len);

//p = (struct Student*)malloc(sizeof(struct Student)*len);动态构造一个结构数组

scanfstudent(p,len);
Sort(p,len);
printfstudent(p,len);
do
{
struct Student st;


printf("
请输入增加的学生的信息:
");
printf("学号:");
scanf("%s",st.xuehao);
printf("姓名:");
scanf("%s",st.name);
printf("性别:");
scanf("%s",st.sex);
printf("年龄:");
scanf("%d",&st.age);
printf("得分:");
scanf("%f",&st.score);


//serch(p,len);

printf("
");
//printf("请输入要删除的学生的学号:");
printf("
");
//scanf("%s",xuehao11);
add(p,&st,&len);
//del(p,xuehao11,&len);删除一个学生的信息
printfstudent(p,len);
printf("是否继续添加?
1:是
2不添加
");
scanf("%d",&c);

}
while(c==1);


}*/
int main(void)
{
int n;
struct Student p[1024];
int len = 0;
while(1)
{
menu(&n);
switch(n)
{
case 1:createdata(p,&len);break;
case 2:add(p,&len);break;
case 3:del(p,&len);break;
case 4:serch(p,len);break;
case 5:Sort(p,len);break;
case 6:printf("谢谢您的使用!

");break;
default:printf("输入有误重新输入!

");break;
}
if(n == 6)
break;
}
return 0;
}

#include
#include


int main ()
{
char s[10]="abcdef";
char *px=NULL,*py=NULL,*ppx=NULL,*ppy=NULL;
px=s;
py=s;
ppx=s;
ppy=s;
char y;
printf("THE s is :%s ",s);
y=*px++;
printf("
THE y=*px++ y is :%c ",y);
y=*ppy--;
printf("
THE *ppy-- y is :%c ",y);
y=*++py;
printf("
THE y=*++py y is :%c ",y);

(*py)++;//*py为py所指向的值。然后值++
printf("
THE s after (*py)++ is :%s ",s);

y=--*ppx++ ;
printf("
THE y=--*ppx++ y is :%c ",y);
printf("
zifu a-1=%c",'a'-1);
printf("优先级顺序 ++ * --");
return 0;
}

#include <stdio.h>
#include <time.h>
#define N 20
int GetTimes(int num)
{
int times=0,t;
while(1)
{

printf("Please input an integer:\n");
scanf("%d",&t);
if(t<0)
printf("Please input a plus integer!\n");
else
{
if(t==num)
{
times++;

break;
}
else if(t>num)
{
times++;

printf("The num %d is bigger than The Target :\n",t);
continue;
}
else if(t<num)
{
times++;
printf("The num %d is smaller than The Target:\n",t);

continue;
}
}
}
return times;

}
void main()
{
int times=0,num;

srand((unsigned)time(NULL));
num=rand()%N;
times=GetTimes(num);

switch(times)
{
case 1:{ system("cls"); printf("The Target is %-2d and you spend %d times!\n",num,times);printf("The level of your performance is :");printf("Very Well!\n");
}break;
case 2: { system("cls");printf("The Target is %-2d and you spend %d times!\n",num,times);printf("The level of your performance is :");printf("Very Well!\n");
}break;
case 3:{ system("cls"); printf("The Target is %-2d and you spend %d times!\n!",num,times);printf("The level of your performance is :");printf("Very Well!\n");
}break;
case 4: {system("cls");printf("The Target is %-2d and you spend %d times!\n!",num,times);printf("The level of your performance is :");
printf("GOOD!");}break;
case 5: {system("cls");printf("The Target is %-2d and you spend %d times!\n",num,times);printf("The level of your performance is :");
printf("GOOD!");}break;
case 6:{system("cls");printf("The Target is %-2d and you spend %d times!\n",num,times);printf("The level of your performance is :");
printf("GOOD!");}break;
case 7:{system("cls");printf("The Target is %-2d and you spend %d times!\n",num,times);printf("The level of your performance is :");
printf("GOOD!");}break;
default:{system("cls");printf("The Target is %-2d and you spend %d times!\n",num,times); printf("Actually,you failed!\n");
}break;
}

}

这个需要一些时间去写.

给你发消息了


C语言程序设计这道题,求求
include<stdlib.h> include int main(){ int i,a[50],b[50],sum=0,count=0;float average;printf("随机生成50个两位正整数:\\n");srand((unsigned)time(NULL));for(i=0;i<50;i++){ a[i]=rand()%90+10;sum=sum+a[i];if((i+1)%10==0)printf("%d\\n",a[i]);else printf...

10道经典的C语言例题(含参考程序)
1.打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个“水仙花数”,因为153=1^3+5^3+3^3。include include int main(){ int bai_wei,shi_wei,ge_wei,i,sum=0;for(i=100;i<1000;i++){ bai_wei=i\/100;shi_wei=(i%100)\/...

c语言程序设计题有哪些?
计算机等级考试二级c语言设计题有程序填空,程序改错,程序设计题。程序填空共3空,每空10分,程序改错共2空,每空15分,程序设计题共1空,40分,要求自己设计一个函数实现要求的功能。知识扩展:二级C语言考试的时候是有源程序的,没改革前是一共三道题,第一道是填空题(30分),第二道是改错题...

C语言程序设计的一道题。
include<stdio.h> main(){ int i,a[12]={100,200,300,400,500,600,700,800,900,1000,1100,1200};\/\/定义变量 float c,b; for(i=0;i<12;i++){\/\/循环12次,12个数据 c=(float)a[i];\/\/整数转浮点数 b=c\/(602+c);\/\/浮点数计算 printf("%d\\t%f\\n",a[i],...

几道简单的C语言编程题,请高手帮忙
1、求1-3+5-7+……-99+101的值。include <stdio.h> void main(){ int i,element,sum=0;for(i=1;i<=101;i+=2){ element=-i;sum=sum+element;sum=-sum;} printf("%d\\n",sum);} 2、编写程序,判断一个数是否是素数。6n+1,6n-1法代码 include<stdio.h> int main(){ int ...

C语言程序设计题,下面是一道C语言的二级程序题,本人是C语言初学者,这...
{ int i,n,k;char c;n=0;for(i=0;s[i]!='\\0';i++) \/*如果字符串没有结束,也就是给的字符串没有到结尾就执行循环,一个字符串的末尾会有一个 '\\0'的结束标志的*\/ n++; \/*这个for循环结束后n里面是这个字符串共有多少个字符*\/ if(n%2==0) \/*如果n对二取余等于0,即...

c语言程序设计习题!!5道
1. D. 顺序、选择、循环 2. C. 在C程序中,程序的执行总是从本程序的main函数开始 3. C. 主函数 4. D. (c>= 'a')&&(c<= 'z')5. A. 12353514

三道c语言的程序题要求要步骤全、最好把思路写上 先上200分在线等_百 ...
第一题很简单,没啥好说的,就是输入数字,然后一个简单的 switch case 语句。include <stdio.h> int main(){ int a, b, opr;printf("输入两个数字,如 3 5 (数字用空格分开)\\n");scanf("%d %d", &a, &b);printf("选择计算方式:\\n");printf("1. 加, 2. 减, 3. 乘, ...

关于C语言程序设计的几道题。学霸们帮一下忙吧。
第六题:include <stdio.h> include <string.h> int main(){ char str[100];gets(str);int t=strlen(str);for(int i=0;i<=t\/2;i++)if(str[i]!=str[t-i-1]){ printf("所输入的字符串不是回文字符串\\n");return 0;} printf("所输入的字符串是回文字符串\\n");} 第五题:...

C语言 编程题目 程序设计题目 高中信息科技竞赛编程题目 【100分...
【第一道】include <iostream> using namespace std;define pi 3.14159265 double maxvolume(double a,double b){ double v1,v2,r;r=b\/(2*pi+2);v1=pi*r*r*a;r=a\/(2*pi+2);v2=pi*r*r*b;if(v1>v2)return v1;else return v2;} int main(){ double a,b;cout<<"请输入...

肇源县15141835332: c语言题目~答对有分~答得完美奖分~一、C语言程序设计题【1】设有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13,…试编程,求出这个数列的前10项之和.【2... -
戏泽棓丙:[答案] 这是C语言的作业吧……好熟悉啊……这是我以前写的,翻出来~没写过的就不写了,太简单了都……1.None2.void main(){ int ge,shi,bai,number; for(number=100;number999) lenNum=4; else if(num>99) lenNum=3; else...

肇源县15141835332: 一道简单的C语言程序设计题 -
戏泽棓丙: ......int minute1 = time1 % 100; int hour1 = time1 / 100; int minute2 = time2 % 100; int hour2 = time2 / 100; if(minute1hour1 -=1; minute1 += 60; } minutes = minute1 - minute2; hour = hour1 - hour2;......

肇源县15141835332: 一道非常简单的C语言题
戏泽棓丙: min=(a[i]>a[i-1])?min:a[i]; 如果a[i]>a[i - 1],始终比较的是当前元素和上一个元素,这是最根本的错误,比如 3 2 4 3这条语句的运行过程就是,min = 24>2 -> min = 2;3 min = 3;最终结果,min = 3;显然是不对的. 正确的是要始终跟当前的min比较,而且不要刻意去追求语句简短,条件运算符并不一定具有更高的效率.min = (a[i]

肇源县15141835332: 求解一道简单的C语言C程序C编程题 -
戏泽棓丙: 题目没说清.1.输入仅限于小写字母还是所有字符;2 y,z输出a,b还是也按ASCII码向后推两位.#include <stdio.h>#include <string.h> int main() { char iword; char oword; while(iword = getchar()) { if(iword == '\n') break; oword = (iword - 95) % 26 + 97; printf("%c",oword); } printf("\n"); return 0; } 输入:abcdefxyz 输出:cdefghzab 此程序仅限输入小写字母.

肇源县15141835332: 一道简单的C语言程序设计题,请懂的人帮忙指正!!! -
戏泽棓丙: 我想大家没理解楼主的意思,每个字母代表一个十进制数字,程序要求的是EGAL每个字母代表的值,我的做法是:EGAL*L=LGAE 左边可以表示为:E*L*(10+3E)+G*L*(10+2E)+A*L*(10+1E)+L*L*(10+0E) 右边可以表示为:L*(10+3E)+G*(10+2...

肇源县15141835332: 一道简单的C语言编程题
戏泽棓丙: 如下,望采纳#include <stdio.h>#include <stdlib.h> int main(){ int a[10],i,j; for(i=0;i<10;i++) scanf("%d",&a[i]); //输入10个数 //冒泡排序,从小到大 for(i=0;i<10;i++) { for(j=i+1;j<10;j++) { if(a[j]<a[i]) { int tmp=a[j]; a[j]=a[i]; a[i]=tmp; } } } //输出 for(j=0;j<10;j++) printf("%d ",a[j]); printf("\n"); return 0;}

肇源县15141835332: 满分200分求C语言编程,简单题 -
戏泽棓丙: 第一题: #include "stdio.h" main() { int i,j,k; for(i=0;i...

肇源县15141835332: C程序设计的一道简单题
戏泽棓丙: #include <stdio.h> void main() { float x,e,q;int i; printf("Please input q\n"); scanf("%f",&q); x=1;e=1;i=1; while(x>q){ x=x/i; e=e+x; ++i; } printf("%f\n",e); getch();} 里面的scanf函数不要加换行符,main函数尾还需添加一个getch()

肇源县15141835332: 谁给一些 简单的C语言程序设计题 ,
戏泽棓丙: 1. 已知 a,b 均是整型变量,写出将 a,b 两个变量中的值互换的程序来. 2. 若 a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2='b' .想得到以下的输出格式和结果,请写出程序(包括定义变量类型和设计输出). a= 3 b= 4 c= 5 x=1....

肇源县15141835332: ~~帮忙做个简单的C语言程序设计题目~~~急!!! -
戏泽棓丙: 展开全部#include void f(char *p) { int i,j; i=j=0; while( *(p+i)!='\0') /* p[i]=*(p+i) */ { if(*(p+i)!=' ') /* p[i]!=空格 */ { *(p+j)=*(p+i); /*把不是空格的字符重新赋值给s[]*/ j++; /*指向下一个未被赋值的内存*/ } i++; /*指向下一个为被判断的字符*/ } *(...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网