当前位置:首页 » 编程语言 » c语言程序设计报告

c语言程序设计报告

发布时间: 2022-04-23 14:49:29

c语言程序设计结课报告

重庆科技学院《
c
语言程序设计》程序设计报告

1
1
设计内容、任务以及要求

...................................... 1

1.1
设计题目的内容
................................................
1

1.2
要求
..........................................................
1

2
总体设计思路

............................................... 2

2.1
系统基本功能
..................................................
2

2.2
具体设计思想
..................................................
2

2.3
系统的总体流程图

...............................................
3

3 .
功能模块的详细设计
........................................ 5

3.1
结构的定义

..........................................................................................................
5

3.2
各个函数的设计具体设计思想和流程图
......................................................................
5

4
.功能模块的调试及测试

.
......................................27

4.1
添加函数的测试
...............................................
2
7

4.2
判断函数的测试

...............................................................................................
2
8
4.3
删除函数的测试

...............................................
2
8

4.4
统计函数的测试

...............................................................................................
2
8
4.5
密码确认函数的测试

......................................................................................
2
8
4.6
密码的修改函数
...............................................
3
1

4.7
主函函数的测试

...............................................
3
2

5
总结

......................................................34

6
致谢
......................................................35

参考文献

....................................................36

原程序代码:
.................................................35

⑵ C语言程序设计实验报告怎么写啊

通过本试验初步培养计算机逻辑解题能力。熟练掌握赋值语句和if语句的应用;掌握switch多路分支语句和if嵌套语句的使用

⑶ C语言程序设计报告 1、小学算术运算测试(math.c)

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
int i,n,fen=0,p;
int a,b,num;
printf("请输入题目数目:");
scanf("%d",&n);
srand(time(0));
for(i=0;i<n;i++)
{ a=rand()%100;
b=rand()%100;
p=rand()%3;

if(p==0)
{ printf("%d + %d = ",a,b);
scanf("%d",&num);
if(num==a+b)fen++;
}

if (p==1)

{ printf("%d - %d = ",a,b);
scanf("%d",&num);
if(num==a-b)fen++;
}

if (p==2)

{ printf("%d * %d = ",a,b);
scanf("%d",&num);
if(num==a*b)fen++;
}
if (p==3&&b!=0)
{ printf("%d/%d = ",a,b);
scanf("%d",&num);
if(num==a/b)fen++;
}
if(p==3&&b==0)
return n-1;
}
printf("总分 %d,得分%d ",n,fen);
if(fen<(0.8*n))
printf("继续努力,加强练习!\n");
if(fen>=(0.8*n))
{if(fen==n)
printf("棒极了!\n");}
else printf("请保持!\n");
}

⑷ 求完整C语言程序设计报告!!

C语言课程设计报告--学生成绩管理系

C语言课程设计报告:
学生成绩管理系统
系统需求
一、 当前学生信息:通过结构体struct student 来保存学生的姓名,学号,性别,语文,数学,英语和计算机等等相关信息,并且通过cin函数来进行给当前学生输入初始信息.

二、学生成绩查询: 输入一个学号, 在文件中查找此学生, 若找到则输出此学生的全部信息和成绩; 若找不到则输出查找失败的信息. 同时也可以全部把各科的平均成绩,最高和最低分输出。

三、新生插入 :通过给该生的学号来和原班上的学生的学号比较大小,若大就在后,若小则靠前排,将此生的信息保存下来。

四、输出全部学生信息和全部学生成绩。

五、退出系统.

六、附加说明:系统将来完善的功能有:可以通过性别来模糊查询,也可以通过姓名的姓来先进行模糊查询,以便后面精确查找。

总体设计
一、 仔细阅读系统要求,首先将此系统化分为如下模块(即如下函数)

1、输入初始的学生信息:其中包括学生的姓名、学号和性别以及学生的语文、数学、英语和计算机等相关信息;可用函数cin(stu *p1)来实现此操作。

2、查询模块:可用stu *lookdata(stu *p1) 来实现。找到就输出此学生全部信息包括学生的语文、数学、英语和计算机等的成绩。

3、插入模块:可用insert( )函数来实现。其中通过学号的大小来比较的,并且以此来排序。

4、输出学生的信息以及成绩:通过学生的姓名来查看学生的语文、数学、英语和计算机等相关成绩,同时也可以分别通过caverage() 、 maverage() 、eaverage() 和comaverage() 来输出语文、数学、英语和计算机等成绩的平均分数、最高和最低分数。

5、退出系统:可用一个函数exit()来实现,首先将信息保存到文件中,释放动态创建的内存空间,再退出此程序。

二、系统主模块结构图:

详细设计
一、 界面设计
此系统界面采用图形和数字化菜单设计。
主界面设计如下:

学生成绩管理系统

请选择相应的数字执行相应的功能:
1:是否输入其他数据
2:查看数据
3:插入数据
4:查找数据
5:更新数据
6:保留数据
7:显示或打印数据
8:语文成绩状况
9:数学成绩状况
10:英语成绩状况
11:计算机成绩状况
12:?
13:退出系统
二、 数据结构设计:
程序设计中用到的结构体类型:
学生信息结构体类型:
typedef struct student{
char name[MAX];
int num[MAX];
char sex[MAX];
int chinese;
int mathematic;
int english;
int computer;
struct student *next;
}

程序代码:
//原始密码是123456
#include"stdio.h"
#include"stddef.h"
#include"stddef.h"
#include"string.h"
#define MAX 10
typedef struct student{ /*定义结构体*/
char name[MAX]; /*姓名*/
int num[MAX]; /* 学号*/
char sex[MAX]; /*性别*/
int chinese; /*语文*/
int mathematic; /* 数学*/
int english; /*英语*/
int computer; /*计算机*/
struct student *next; /*结构体指针*/
}stu;
stu *head; /*头指针*/
void print() /*显示或打印函数*/
{
system("cls");
printf("\t\t\tScore Manage System\n"); /*成绩管理系统*/
printf("<1>Enter Record\t"); /*输入数据*/
printf("<2>Display\t"); /*显示*/
printf("<3>Insert\t"); /*插入数据*/
printf("<4>Quest\t"); /*访问数据*/
printf("<5>Update\t"); /*以前数据*/
printf("<6>Save\t"); /*保留数据*/
printf("<7>Fresh\t"); /*更新数据*/
printf("<8>Chinese Average\t"); /*语文平均成绩*/
printf("<9>Math Average\t"); /*数学平均成绩*/
printf("<10>English Average\t"); /*英语平均成绩*/
printf("<11>Computer Average\t"); /*计算机平均成绩*/
printf("<12>Quit\t\n"); /*退出*/
}

void cin(stu *p1) /*输入相关数据的函数*/
{ printf("Enter name:\n");
scanf("%s",&p1->name);
printf("Enter num:\n");
scanf("%d",&p1->num);
printf("Enter sex:\n");
scanf("%s",&p1->sex);
printf("Enter score:\n");
printf("Enter chinese:\n");
scanf("%d",&p1->chinese);
printf("Enter math:\n");
scanf("%d",&p1->mathematic);
printf("Enter English:\n");
scanf("%d",&p1->english);
printf("Enter Computer:\n");
scanf("%d",&p1->computer);
}
stu *cindata() /*其他数据是否继续输入的函数*/
{ stu *p1,*p2;
int i=1;
char ch;
p1=(stu *)malloc(sizeof(stu));
head=p1;
while(i)
{
cin(p1);
printf("Do you Want to Continue?yes or no"); /*是否继续输入数据*/
ch=getchar();
ch=getchar();
if(ch=='n'||ch=='N')
{ i=0;
p1->next=NULL;
}
else
{ p2=p1;
p1=(stu *)malloc(sizeof(stu));
p2->next=p1;
}
}
return(p1->next);
}

stu *lookdata(stu *p1) /*查看数据的函数*/
{
while(p1!=NULL)
{ printf("Num:%d\t",p1->num);
printf("Name:%s\t",p1->name);
printf("Sex:%s\t",p1->sex);
printf("\n");
printf("Chinese:%d\t",p1->chinese);
printf("Math:%d\t",p1->mathematic);
printf("English:%d\t",p1->english);
printf("Computer:%d\t",p1->computer);
printf("\n");
p1=p1->next;
}
return p1;
}

void insert() /*通过比较学号来插入数据的函数*/
{ stu *p1,*p3,*p2;
char ch;
p1=head;
p3=(stu *)malloc(sizeof(stu));

p3->next=NULL;
if(head==NULL){ head=p3; return;}
cin(p3);
while(p1!=NULL&&(p1->num<p3->num)) /*通过学号的比较来插入*/
{ p2=p1;p1=p1->next;}
if(p2==head) {p3->next=head; head=p3; return;}
p3->next=p1;
p2->next=p3;

}

find(stu *p2) /*通过姓名查找查看数据的函数*/
{ char name[20];
int b=0;
printf("Enter the name of the student you want to find:"); /*通过姓名查看*/
scanf("%s",name);
while(p2!=NULL)
{if(strcmp(name,p2->name)==0)
{
printf("The data you want has be found\n");
printf(" Name:%s\t",p2->name);
printf("Num:%d\t",p2->num);
printf("sex%s\t",p2->sex);
printf("\n");
printf("Chinese:%d\t",p2->chinese);
printf("Math:%d\t",p2->mathematic);
printf("English:%d\t",p2->english);
printf("Computer:%d\t",p2->computer);
printf("\n");

b=1;
}
else if(b==0)
printf("sorry not find data!");
p2=p2->next;
}

if(b==1)
{
print();
printf("Find one\n");}
else
{print();
printf("Not find\n");

}
}

void caverage() /*求各学生语文平均分、最高和最低分成绩的函数*/
{ stu *p1;
int i;
float max=0.0,min=200.0;
float sum=0.0,aver=0;
p1=head;
if(p1==NULL)
printf("not data!");
else
{for(i=0;p1!=NULL;i++,p1=p1->next)
sum+=p1->chinese;
aver=sum/i;

p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
{if(max<p1->chinese)
max=p1->chinese;
}
p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
if(min>p1->chinese)
min=p1->chinese;
}
printf("Chinese Average:%f",aver);
printf("Chinese Max:%f",max);
printf("Chinese Min:%f",min);
}

void maverage() /*求各学生数学平均分、最高和最低分成绩的函数*/
{ stu *p1;
int i;
float max=0.0,min=200.0;
float sum=0.0,aver=0;
p1=head;
if(p1==NULL)
printf("not data!");
else
{for(i=0;p1!=NULL;i++,p1=p1->next)
sum+=p1->mathematic;
aver=sum/i;

p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
{if(max<p1->mathematic)
max=p1->mathematic;
}
p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
if(min>p1->mathematic)
min=p1->mathematic;
}
printf("Mathe Average:%f",aver);
printf("Mathe Max:%f",max);
printf("Mathe Min:%f",min);
}

void eaverage() /*求各学生英语平均分、最高和最低分成绩的函数*/
{ stu *p1;
int i;
float max=0.0,min=200.0;
float sum=0.0,aver=0;
p1=head;
if(p1==NULL)
printf("not data!");
else
{for(i=0;p1!=NULL;i++,p1=p1->next)
sum+=p1->english;
aver=sum/i;

p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
{if(max<p1->english)
max=p1->english;
}
p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
if(min>p1->english)
min=p1->english;
}
printf("English Average:%f",aver);
printf("English Max:%f",max);
printf("English Min:%f",min);
}

void comaverage() /*求各学生计算机平均分、最高和最低分成绩的函数*/
{ stu *p1;
int i;
float max=0.0,min=200.0;
float sum=0.0,aver=0;
p1=head;
if(p1==NULL)
printf("not data!");
else
{for(i=0;p1!=NULL;i++,p1=p1->next)
sum+=p1->computer;
aver=sum/i;

p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
{if(max<p1->computer)
max=p1->computer;
}
p1=head;
for(i=0;p1!=NULL;i++,p1=p1->next)
if(min>p1->computer)
min=p1->computer;
}
printf("Computer Average:%f",aver);
printf("Computer Max:%f",max);
printf("Computer Min:%f",min);
}

update(stu *p2) /*通过姓名查找来更新数据*/
{
char name[10]; /*p2为指向结构体struct student的指针*/
int b=0;
printf("Enter The Name"); /*输入姓名*/
scanf("%s",name);

while(p2!=NULL)
{if(strcmp(name,p2->name)==0)
{
printf("Find you data\n");
scanf("Name:%s",p2->name);
scanf("Num:%s",p2->num);
scanf("Sex:%s",p2->sex);
scanf("Chinese:%d",p2->chinese);
scanf("Math:%d",p2->mathematic);
scanf("english:%d",p2->english);
scanf("Computer:%d",p2->computer);
printf("Success!");

b=1;}
else if(b==0)
printf("Sorry not Find data!");
p2=p2->next;}
if(b==0)
{print();
printf("Sorry not Find data!");
}
else
{
print();
printf("Finish!");
}
}

save(stu *p2) /*保留数据函数*/
{
FILE *fp;
char file[10];
printf("Enter file name"); /*输入文件名*/
scanf("%s",file);
fp=fopen(file,"w");
while(p2!=NULL)
{
fprintf(fp,"%s",p2->name);
fprintf(fp,"%s",p2->num);
fprintf(fp,"%s",p2->sex);
fprintf(fp,"%d",p2->chinese);
fprintf(fp,"%d",p2->mathematic);
fprintf(fp,"%d",p2->english);
fprintf(fp,"%d",p2->computer);
p2=p2->next;
}
fclose(fp);
}

char password[7]="123456"; /*定义初始密码*/

void main() /*主函数*/
{ int choice;
stu *p2;
char s[8];
int flag=0,i; /*标志项*/
int n=3;
do{ printf("Enter password:\n");
scanf("%s",s);
if(!strcmp(s,password)) /*进行密码匹配验证*/
{ printf("PASS\n\n\n");
flag=1;
break;
}
else{
printf("Error Enter again:\n");
n--;
}
}
while(n>0);
if(!flag)
{printf("you have Enter 3 times!"); /*输入密码超过了3次!!*/
exit(0); /*自动退出*/
}
/*密码验证成功后进入的界面*/

printf("~~~~~~~~~~\t\t\t~~~~~~~~~~~~\n"); /*操作界面*/
printf("\t\tWelcom to the Mis\n");
printf("Author:-----\tClass:------\tNum:------\n"); /*作者,班级和号码*/
printf("Adress:HG\n"); /*地址*/
printf("%%%%%%%%%%%%%%%%%%%%%%%%%%%\n");
printf("\t\tEnter OP:\n");
printf("\n\n\n\n");
printf("==============\t\t==============\n");
printf("==============\t\t==============\n");
printf("\t\tEnter the MIS yes or no\n"); /*问进入系统与否*/

scanf("%d",&choice);
if(choice=='n'||choice=='N')
exit(1);

print();
while(1)
{
printf("Enter choice:");
scanf("%d",&i);
if(i<1||i>13)
{
printf("Enter num from 1 to 13:\n"); /*再从1-13中进行选择*/
exit(1);
}

switch(i)
{ case 1:
p2=cindata(); /*其他数据是否继续输入的函数*/
break;
case 2:
p2=lookdata(head); /*查看数据的函数*/
break;
case 3:
insert(); /*通过比较学号来插入数据的函数*/
break;
case 4:
find(head); /*通过姓名查找查看数据的函数*/
break;
case 5:
update(head); /*通过姓名查找来更新数据*/
break;
case 6:
save(head); /*保留数据函数*/
break;
case 7:
print(); /*显示或打印函数*/
break;
case 8:
caverage(); /*求各学生语文平均分、最高和最低分成绩的函数*/
break;
case 9:
maverage(); /*求各学生数学平均分、最高和最低分成绩的函数*/
break;
case 10:
eaverage(); /*求各学生英语平均分、最高和最低分成绩的函数*/
break;
case 11:
comaverage(); /*求各学生计算机平均分、最高和最低分成绩的函数*/
break;
case 12:
; /*空操作*/
case 13:
exit(1); /*退出*/
break;
}
scanf("%d",&i);
}
}

程序中出现的问题及解决方法

问题一、学生初始信息模块:
其中包括学生的姓名、学号和性别以及学生的语文、数学、英语和计算机等相关信息;可用函数cin(stu *p1)来实现此操作。当正确输入存在的学生学号,系统进行判断时,提示不存在此学生。

解决办法及步骤:
1、一个个输出所有的学生的学号,检查文件中是否有此学生,发现有。
2、既然有此学生,那么检查循环判断是否有此学生的语句发现没有错
3、输出用于循环检查语句中的学生信息,发现乱码
4、仔细分析乱码的原因,最后发现是变量的类型错误,错将学生类型的结构体指针变量定义为了其他类型的指针变量。

问题二、查询模块:
可用stu *lookdata(stu *p1) 来实现。找到就输出此学生全部信息包括学生的语文、数学、英语和计算机等的成绩。当正确输入查找信息时,系统却不能够得到所要查找的学生信息以及学生的语文、数学、英语和计算机的成绩。

解决办法及步骤:
1、检查所编写的程序代码是否完全正确,若不是,则改之,然后再继续正确输入查找信息看能否得到所要查找的学生信息以及学生的语文、数学、英语和计算机的成绩。

2、检查当我们在输入查找信息时,看是否我们输入的信息有误,若是这样的话,我们应当仔细输入查找信息。

问题三、插入模块:
可用insert( )函数来实现。其中通过学号的大小来比较的,并且以此来排序。当我们输入插入信息时,系统却提示插入不进数据。

解决办法及步骤:
1、检查所编写的程序代码是否完全正确,若不是,则改之,然后再继续正确输入插入信息看能否插入进去得到所要插入的学生信息以及学生的语文、数学、英语和计算机的成绩。

2、检查当我们在输入插入信息时,看是否我们输入的插入信息有

⑸ C语言实验报告怎么写

#include <stdio.h>


int main()

{

unsigned long a;

char c;

printf("Input a binary number: ");

for(a=0;(c=getchar())!=' ';)

a=a*2+c-'0';

printf("The number is %lu in decimal ",a);

printf("The number is %lo in octal ",a);

printf("The number is %lX in Hexadecimal ",a);

return 0;

}

⑹ 《C语言程序设计》实验报告

#include "stdio.h"
#define N 10
typedef struct
{char name[20];
char xuehao[20];
int xuhao[5];
float shuxue[10];
float yingyu[10];
float jisuanji[10];
float sum[10];
float average[10];
}user;
main()
{user sp[N],temp;
int i;
printf("enter xinxi; \n");
for(i=0;i<N;i++)
{gets(sp[i].name);gets(sp[i].xuehao);
gets(sp[i].xuhao);gets(sp[i].shuxue);
gets(sp[i].yingyu);gets(sp[i].jisuanji);
sum=sp[i].shuxue+sp[i].yingyu+sp[i].jisuanji;
average=sum/3;
}
getsort(sp);
printf("after sorted: \n");
for(i=0;i<N;i++)
printf("%d\t%s\t%s\t%d\t%d\t%d\t%d\t%d\n",sp[i].xuhao,sp[i].xuehao,sp[i].name,sp[i].yingyu,sp[i].jisuanji,sp[i].shuxue,sp[i].sum,sp[i].average);
}
getsort(user *sp)
{int i,j;
user temp;
for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(sp[i].sum<sp[j].sum)
{temp=sp[i].sum;
sp[i].sum=sum[j].sum;
sp[j].sum=temp;}

我没运行,可能对吧,你试一下

⑺ C语言程序设计报告的格式

设计报告格式要求课程设计封面使用最后的统一格式。各种图表必须严格符合规范。论文的图应有图名和图号,居中写在图的下方;表应有表名、表号,靠左写在表的上方。表题、图题用5号黑体,参考文献用5号楷体。课程设计报告分章节撰写,书写层次和章节序号作如下的约定:一、设计任务 (居中书写,3号黑体)1.1╳ ╳ ╳ ╳ (左起书写, 4号黑体)1.1.1 ╳ ╳ ╳ ╳ (左起书写,小4号黑体)1. ╳ ╳ ╳ ╳ (空两格书写,小4号黑体)╳ ╳ ╳ ╳ (正文,小4号宋体 首行缩进2个字符)二、功能模块结构.......三、主要模块的流程图及说明.......四、运行结果.......

⑻ c语言设计程序报告

#include "stdio.h"
#include "string.h"
#include "stdlib.h"
void cut();
void in();
void display();
int keep();
int enter();
struct msg
{
int num;
char name[20];
float score1;
float score2;
float score3;
double ave;
}

main()
{
struct msg student[10];
int i,n=0,k,m;

printf("请输入学员信息.\n");
n=enter(student);

printf("\n排序前学员信息如下:\n");
printf("\t学号 \t姓名 \t平均成绩\n");
for(i=0;i<n;i++)
printf("\t%d \t%s \t%f\n",student[i].num,student[i].name,student[i].ave);

printf("\n");

printf("\n排序后学员信息如下:\n");
display(student,n);

printf("\n\n是否要插入新学员?<y or n>");
k=keep();
if(k==0) exit(k); //如果输入的不是y退出程序
else
{
in(student,n);
}

printf("\n\n是否要删除某个学员?<y or n>");
k=keep();
if(k==0) exit(k);
else
{
m=n+1; //之前插入了一个学生,所以数组增加1
cut(student,m);
}

}

int keep() //是否继续条件判断函数
{
char ans;
fflush(stdin);
ans=getchar();
if (ans=='y')
return 1;
else
return 0;
}

int enter(struct msg student[10]) //录入结构数据函数
{
int i,k,n=0;
for(i=0;;i++)
{
student[i].num=i+1;
printf("\n学号:%d\n",student[i].num);

printf("姓名: ");
fflush(stdin);
gets(student[i].name);

if(i==0) printf("\n三门成绩:\n");
printf("成绩1:");
scanf("%f",&student[i].score1);

printf("成绩2:");
scanf("%f",&student[i].score2);

printf("成绩3:");
scanf("%f",&student[i].score3);

student[i].ave=(student[i].score1+student[i].score2+student[i].score3)/3.0;

n++;

printf("是否要继续?<y or n>");
k=keep();
if(k==1)
continue;
else
{
break;
}

}
return n;
}

void display(struct msg student[],int n) //排序函数,多次调用
{
int i,j,temp1;
char temp2[20];
double temp;

printf("\t学号 \t姓名 \t平均成绩\n");

for(i=0;i<n;i++)
{
for(j=0;j<n-i-1;j++)
{
if(student[j].ave<student[j+1].ave)
{
temp=student[j].ave;
student[j].ave=student[j+1].ave;
student[j+1].ave=temp;

temp1=student[j].num;
student[j].num=student[j+1].num;
student[j+1].num=temp1;

strcpy(temp2,student[j].name);
strcpy(student[j].name,student[j+1].name);
strcpy(student[j+1].name,temp2);
}
}
}
for(i=0;i<n;i++)
printf("\t%d \t%s \t%f\n",student[i].num,student[i].name,student[i].ave);
}

void in(struct msg student[],int n) //插入函数
{

int k;

k=n+1;
printf("\n请输入要插入学员的信息\n");

student[n].num=k;
printf("\n学号:%d\n",student[n].num);

printf("姓名:");
fflush(stdin);
gets(student[n].name);

printf("\n三门成绩:");
printf("\n成绩1:");
scanf("%f",&student[n].score1);
printf("成绩2:");
scanf("%f",&student[n].score2);
printf("成绩3:");
scanf("%f",&student[n].score3);

student[n].ave=(student[n].score1+student[n].score2+student[n].score3)/3.0;

printf("\n插入新学员后学员的信息如下\n");
display(student,k);
}

void cut(struct msg student[],int n)//删除函数
{
int i,k1,j,m;

printf("输入要删除的学员的学号:");
scanf("%d",&k1);

for(i=0;i<n;i++)
{
if(student[i].num==k1)
break;
}

for(j=i;j<n-1;j++)
{
student[j].num=student[j+1].num;
strcpy(student[j].name,student[j+1].name);
student[j].ave=student[j+1].ave;
}

m=n-1;
printf("\n删除后学员的信息如下:\n");
display(student,m);
}

这个也是和你差不多的学生成绩设计,对其进行排序,删除,添加,研究一下你那个应该就差不多了

⑼ c语言程序设计实验报告

五、 课程设计小结心得体会
1设计思想
1)、设定一个一维数组,可先按员工序号设定每位员工的工资
2)、利用While语句和Prinft语句完成用户菜单的设计
功能为:第1项 设为员工编号和工资数据
第2项 设为修改员工工资数据
第3项 设为查询员工工资数据
第4项 设为结束系统
3)、当用户选择1、2项时,需输入员工编号,所以需要设计编号校正功能,如果出错可输出“The error employe number”
4)、当选择2时,进行工资数据的修改,并将新数据存回该员工的工资数组中
5)、利用for循环中判断语句,将用户工资数与数组中的工资数进行比较,如相同则输出,将计数器加1,如此下去,直到把整个数组遍历一遍
6)、判断计数器是否为0, 是0表示找不到相符的工资,如果不为0,则输出共查出几比相符的工资
以上当然里面也涉及了“函数的模块化”理念,可以避免但需要重复打印头文件时重复编写打印信头的语句。像这样的程序是多见的,这样不但降低了程序还发效率,而且耗时浪费资源“共用体”的使用简化了程序的“复杂”性,正如(4)中,学号与姓名同时表示一个人,但在函数使用了“共用体”,从而程序的简单可以便于纠错,查找问题,避免了代码的重复,这样就给编译时带来了一定的难度与“量”的繁杂。一般不采取这样的做法,力求“简单、明了、清晰”。

⑽ 怎样做C语言程序设计报告

这是我们的设计报告,你可以有个参考

计算机科学技术系上机实践报告

课程名称:c语言设计 年级: 上机实践成绩:
指导教师:XXX 姓名:
上机实践名称: 学号: 上机实践日期:
上机实践编号: 组号: 上机实践时间:2学时

一、目的
对话框、光标、字符串、位图
二、内容与设计思想
1.光标的使用:设计一个自定义光标,通过菜单选择使用ARROW、WAIT和一个自定义光标。
2.位图的使用:设计四个位图。
3.对话框的使用:    3.1 设计一个模式对话框,复选四个位图的显示。    3.2 设计一个无模式对话框,单选一个位图进行显示。    3.3 设计一个打开文件通用对话框,通过消息框显示获取的文件名。
4.字符串的使用:在客户区显示的文字采用字符串资源定义的方法。所显示的文字信息不在程序中出现。
5.中英文菜单切换:将菜单项的显示文字定义为字符串资源,或者通过菜单整体切换。

三、使用环境
VS2010

四、调试过程
问题:出现如下错误:<1>error C2664: “TextOutW”: 不能将参数4 从“char *”转换为“LPCWSTR”
与指向的类型无关;转换要求reinterpret_cast、C 样式转换或函数样式转换
解决:头文件添加#include<tchar.h>,然后将字符串用_T(“”)括起来。
<2>无法画出图标文件。
解决:在WM_COMMAND中未响应其选项
<3>无法画出不同位置的图标文件。
解决:图标文件的ID(连续的),做一个FOR循环
<4>动态菜单的添加
解决:通过老师的实例来完成。

出现的困难:(1)中英文的转化。
解决方案:建立两个菜单资源,一个是中文的,一个是英文的。看响应的是哪个。如果是中文的,就调用第一个菜单资源,如果是英文的,就调用第二个菜单资源。
(2)无模式对话框的设计与实现。
解决方案:在设计无模式对话框的时候,只要选中了哪个选项,就直接返回数据,不用通过IDOK来确认。

五、总结
在上机操作的过程中,也出现了一些意想不到的问题。出现错误之后,学会看看老师的实例程序,在对比中完成自己的作业。在解决问题的过程中,也学到了新的东西。

六、附录
Homework3.RAR
另外,团IDC网上有许多产品团购,便宜有口碑

热点内容
每种编译器必需的功能 发布:2025-07-17 18:57:14 浏览:638
古玩源码 发布:2025-07-17 18:22:49 浏览:88
ie浏览历史文件夹 发布:2025-07-17 18:07:05 浏览:262
php还是c 发布:2025-07-17 18:02:57 浏览:457
androidasp 发布:2025-07-17 17:57:34 浏览:476
采访直播脚本 发布:2025-07-17 17:53:46 浏览:882
怎样启用远程访问 发布:2025-07-17 17:52:19 浏览:559
c删除文件夹中的文件 发布:2025-07-17 17:52:17 浏览:488
我的世界梦服务器地址 发布:2025-07-17 17:30:30 浏览:323
c语言函数传递参数 发布:2025-07-17 17:24:50 浏览:923