当前位置:首页 » 编程语言 » 张亚红c语言程序设计
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

张亚红c语言程序设计

发布时间: 2022-04-19 08:01:11

c语言程序设计

每次都加j导致打印错误。

修改如下:

if(*(p1+i)%2==0)
{
b[j]=*(p1+i);
printf("%d,",b[j]);
j++;
}

❷ 《C语言程序设计》课程设计

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>

#define BUFFERSIZE 1024
#define MAXACCOUNT 1000
typedef struct BankAccount
{
int account;
int key;
char name[32];
float balance;
}BANKACCOUNT;

BANKACCOUNT accountCollection[MAXACCOUNT];
int curAccount = 0;

void InsertAccount(FILE *fp)
{
BANKACCOUNT newaccount;
printf("please input the account information\n");
printf(">>account num:");
scanf("%d",&(newaccount.account));
printf(">>key:");
scanf("%d",&(newaccount.key));
printf(">>name:");
scanf("%s",newaccount.name);
printf(">>balance:");
scanf("%f",&(newaccount.balance));
fseek(fp,0L,SEEK_END);
fprintf(fp,"%d %d %s %.2f\n",newaccount.account,newaccount.key,newaccount.name,newaccount.balance);
}
void GetAccount(FILE *fp)
{
int accountnum;
int key;
char name[32];
float balance;
int i =0,j;
char buffer[BUFFERSIZE];
int len;
curAccount = 0;
fseek(fp,0,SEEK_SET);
while(!feof(fp)) /* 因为feof()最后会读2遍,所以最后curAccount多加了1 */
{
fscanf(fp,"%d %d %s %f",&accountnum,&key,name,&balance);
accountCollection[curAccount].account = accountnum;
accountCollection[curAccount].key = key;
strcpy(accountCollection[curAccount].name ,name);
accountCollection[curAccount].balance = balance;
curAccount++;
}
}
void ListAccount(FILE *fp)
{
int i =0;
printf("There is %d accounts at all:\n",curAccount-1);/* curAccount减去多加的1 */
for(i = 0;i< curAccount-1;i++)
{
printf("ACCOUNT[%d]:\n",i+1);
printf("account:%d\n",accountCollection[i].account);
printf("name:%s\n",accountCollection[i].name);
printf("balance:%.2f\n",accountCollection[i].balance);
}
}
int SearchAccount(FILE *fp,int accountnum)
{
int i =0;
for(i = 0;i< curAccount-1;i++)
{
if(accountCollection[i].account == accountnum)
{
printf("ACCOUNT[%d]:\n",i+1);
printf("account:%d\n",accountCollection[i].account);
printf("name:%s\n",accountCollection[i].name);
printf("balance:%.2f\n",accountCollection[i].balance);
return 1;
}
}
return 0;
}
void DelAccount(FILE *fp,int accountnum)
{
int i;
if(SearchAccount(fp,accountnum)==0)
printf("Can't find the account\n");
else
{
for(i = 0;i<curAccount-1;i++)
{
if(accountCollection[i].account != accountnum)
fprintf(fp,"%d %d %s %.2f\n",accountCollection[i].account,accountCollection[i].key,accountCollection[i].name,accountCollection[i].balance);
}
printf("delete successfully!\n");
}
}

int main()
{
FILE *fp;
int accountnum;
int i;
do{
system("cls"); //清屏
puts("********************************************");
puts("* You can choose : *");
puts("* 1 : Insert a new Account *");
puts("* 2 : List all Accounts *");
puts("* 3 : Find a Account *");
puts("* 4 : Delete a Account *");
puts("* 5 : quit *");
puts("********************************************");
printf("Please input your choice:");
scanf("%d",&i);
system("cls"); //清屏
switch(i)
{
case 1:
if(!(fp = fopen("account.txt","a+")))
{
printf("can't open the file account.txt\n");
exit(0);
}
InsertAccount( fp);

printf("press any key to continue.....\n");
getch();
fclose(fp);
break;
case 2:
if(!(fp = fopen("account.txt","r")))
{
printf("can't open the file account.txt\n");
exit(0);
}
GetAccount(fp);
ListAccount(fp);

fclose(fp);
printf("press any key to continue.....\n");
getch();
break;
case 3:
printf("please input the account num:\n");
scanf("%d",&accountnum);
if(!(fp = fopen("account.txt","r")))
{
printf("can't open the file account.txt\n");
exit(0);
}
GetAccount(fp);
if(!SearchAccount(fp,accountnum))
printf("There is not the account:%d\n",accountnum);

fclose(fp);
printf("press any key to continue.....\n");
getch();
break;
case 4:
printf("please input the account num:\n");
scanf("%d",&accountnum);
if(!(fp = fopen("account.txt","r")))
{
printf("can't open the file account.txt\n");
exit(0);
}
GetAccount(fp);
fclose(fp);
if(!(fp = fopen("account.txt","w+")))
{
printf("can't open the file account.txt\n");
exit(0);
}
DelAccount(fp,accountnum);
fclose(fp);
printf("press any key to continue.....\n");
getch();
break;
default:
break;
}
}while(i != 5);
return 0;
}
账户数据文件名已经设定为account.txt,这个文件要和上面这个程序放在同一个文件夹下面,不然就得用绝对路径(比如"d:\\book\\account.txt"),account内容可以用记事本打开自己改动,然后运行程序后就可以在程序中添加或删除

❸ C语言程序设计怎么做

分析题目
设计算法
设计流程图(一般报告要求要有, 如果不要求 可以不做。)
实现代码
调试功能。
写报告。

❹ C语言程序设计 (学生选修课程设计)

这是我做的,你看是否满意?可能有点大,但也没办法呀,你的题目也比较大,呵呵!所以,如果满意,多给我追加点分!
#include
"stdio.h"
#include
"stdlib.h"
#include
"string.h"
typedef
struct
course
{
char
number[15],name[25];
int
kind,time,lessontime,practicetime,credit,term;
}type;
FILE
*fp1;
void
overview();
//浏览函数,负责浏览整个课程信息
void
seek();
//查询函数,负责查询课程信息
void
choose_course();//选课函数,负责让用户选课
void
out(type
temp);
void
input();
int
main()
{
int
n,i;
if((fp1=fopen("course_information.txt","wb"))==NULL)
{printf("创建文件失败!\n");exit(0);}
printf("请输入要存储的课程数目:\n");
scanf("%d",&n);
printf("开始创建文件,请输入课程信息:\n\n");
for(i=0;i<n;i++)
{
printf("请输入第%d门课程的信息:\n",i+1);
input();
printf("\n");
}
printf("如想浏览整个课程信息,请输入1;如想查询课程信息,请输入2;
如想进行选课,请输入3;如想结束选修课系统,请输入0!\n");
while((scanf("%d",&n))!=EOF)
{
if(n==1)
overview();
if(n==2)
seek();
if(n==3)
choose_course();
if(n==0)
exit(0);
printf("\n\n如想继续操作,只要按规则输入你要进行的操作即可!\n规则:如想浏览整个课程信息,请输入1;如想查询课程信息,请输入2;如想进行选课,请输入3!\n");
}
printf("欢迎您使用此程序进行选课,谢谢!\n");
fclose(fp1);
return
0;
}
void
input()
{
course
c_a;
printf("请输入课程编码:
");
scanf("%s",c_a.number);
printf("请输入课程名:
");
scanf("%s",c_a.name);
printf("请输入课程性质:限选课,请输入1;选修课,请输入2;必修课,请输入3!
");
scanf("%d",&c_a.name);
printf("请输入课程总学时:
");
scanf("%d",&c_a.time);
printf("请输入课程授课时间:
");
scanf("%d",&c_a.lessontime);
printf("请输入课程实验或实践时间:
");
scanf("%d",&c_a.practicetime);
printf("请输入课程学分:
");
scanf("%d",&c_a.credit);
printf("请输入课程所在的学期,比如第二学期,就输入2即可。");
scanf("%d",&c_a.term);
fwrite(&c_a,sizeof(struct
course),1,fp1);//将一个结构体元素写入文件中
}
void
out(type
temp)
{
printf("课程代码:
%s\n课程名:
%s\n",temp.number,temp.name);
printf("课程名:
%s\n",temp.name);
if(temp.kind==1)
printf("课程性质:
Limited
optional
course\n");
else
if(temp.kind==2)
printf("课程性质:
Optional
course\n");
else
if(temp.kind==3)
printf("课程性质:
Required
Courses\n");
else
printf("该编码系统不认识,即无对应的课程性质存在!\n");
printf("课程总学时:
%d\n课程授课学时:
%d\n实验或上机学时:
%d\n学分:
%d\n课程开课学期:
%d\n\n",temp.time,temp.lessontime,temp.practicetime,temp.credit,temp.term);
}
void
overview()
{
rewind(fp1);
course
temp;
printf("整个课程信息如下:\n");
while((fread(&temp,sizeof(type),1,fp1))!=0)
out(temp);
}
void
seek()
{
int
judge,credit=0,kind=0;
char
a='N';
course
temp;
printf("如想按学分查询,请输入1;如想按课程性质,请输入2:\n");
scanf("%d",&judge);
rewind(fp1);
//将文件指针位置置为开头
if(judge==1)
{
printf("请输入要查询的学分:\n");
scanf("%d",&credit);
while((fread(&temp,sizeof(type),1,fp1))!=0)
if(credit==temp.credit)
out(temp);
}
else
if(judge==2)
{
printf("请输入你要查找课程的性质(限选课,请输入1;选修课,请输入2;必修课,请输入3):");
scanf("%d",&kind);
while((fread(&temp,sizeof(type),1,fp1))!=0)
if(temp.kind==kind)
out(temp);
}
else
printf("不好意思,无此类查询!\n");
}
void
choose_course()
{
rewind(fp1);
course
temp;
int
judge=1,n=0,time=0,credit=0;
char
choose[20][20];
r1:
printf("请开始填写课程编号进行选课:\n");
while(judge==1)
{
printf("请输入你所选课程的标号:
");
scanf("%s",choose[n]);
n++;
printf("如想继续选课,请输入1;如想提交,请输入0!\n");
scanf("%d",&judge);
}
while((fread(&temp,sizeof(type),1,fp1))!=0)
{
for(int
i=0;i<n;i++)
if(strcmp(temp.number,choose[i])==0)
{time=time+temp.time;credit=temp.credit;break;}
}
if(time<270||credit<40)
goto
r1;
printf("你所选的课为:\n");
while((fread(&temp,sizeof(type),1,fp1))!=0)
{
for(int
i=0;i<n;i++)
if(strcmp(temp.number,choose[i])==0)
{out(temp);break;}
}
}

❺ C语言程序设计是什么

C语言是古老而长青的编程语言,它具备了现代程序设计的基础要求,它的语法是很多其他编程语言的基础,在系统程序、嵌入式系统等领域依然是无可替代的编程语言,在各类编程语言排行榜上常年占据前两名的位置。

程序设计是一门基础课程。对于计算机相关专业而言,程序设计是专业基础知识,是进一步学习其他专业知识的第一步阶梯;对于非计算机专业而言,程序设计的学习有助于理解计算机的能力所在,理解哪些是计算机擅长解决的问题,怎样的方式方法是计算机擅长的手段,从而能更好地利用计算机来解决本专业领域内的问题。

❻ C语言程序设计

#include <stdio.h>
#include <string.h>

int main ( )
{
int yanghui[7][10], i, j;
memset (yanghui, 0, sizeof(yanghui));
yanghui[0][0] = 1;
yanghui[1][0] = yanghui[1][1] = 1;
for (i = 2; i < 7; ++i){
yanghui[i][0] = 1;
for (j = 1; j <= i; ++j){
yanghui[i][j] = yanghui[i-1][j] + yanghui[i-1][j-1];
}
}
for (i = 0; i < 7; ++i){
for (j = 0; j <= i; ++j){
printf ("%d ", yanghui[i][j]);
}
printf ("\n");
}
return 0;
}

❼ C语言程序设计。

基本是按照需求来写的,有BUG的话楼主自己改下哈。

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

/*
输&#12042;&#12032;个&#12055;六进制数,
返回对应的&#12102;符号&#12055;进制数。
&#12055;六进制数输&#12042;并保存在&#12032;个字符串,
函数需能对&#12055;六进制数是否正确进
&#12175;判断,
如“123”有前导空&#12137;字符,算&#12032;个合法的&#12055;六进制数;
“12fg”中含有&#12206;法字符,可以仅转换“12f”,并输出警告信息
“h123”为&#12206;法字符串,返回结果为0,并输出警告信息。
*/

//0error
//1warnning
//2right


intjudeg(char*b)
{
intlength=strlen(b);
intcycle,value;
if(b[0]==''&&b[0]<='f')
{
for(cycle=1;cycle<length;cycle++)
{
if((b[cycle]>='0'&&b[cycle]<='9')||(b[cycle]>='a'&&b[cycle]<='f'))
value=2;
elseif(b[cycle]>'f')
{
b[cycle]='';
value=1;
}
}
}
elseif(b[0]>'f')
value=0;
else
{
for(cycle=0;cycle<length;cycle++)
{
if((b[cycle]>='0'&&b[cycle]<='9')||(b[cycle]>='a'&&b[cycle]<='f'))
value=2;
elseif(b[cycle]>'f')
{
b[cycle]='';
value=1;
}
}
}
returnvalue;
}


intmain(void)
{
chara[100];
intvalue=-1,hex;
printf("HEX:");
scanf("%x",&hex);
sprintf(a,"%x",hex);
printf("getstring=%s,hex=%x ",a,hex);
value=judeg(a);
printf("value=%d ",value);
if(value==0)
printf("Warnning:error! ");
elseif(value==1)
{
printf("Warnning:containsillegalcharacters! ");
printf("string=%s,int=%d ",a,hex);
}
else
{
printf("string=%s,int=%d ",a,hex);
}

return0;


}

❽ c语言程序设计的基本步骤

语言程序开发的步骤
1.
定义程序目标。在开始写程序之前,应对希望程序要做什么有一个清晰的想法。考虑程序需要的信息,程序需要进行的计算和操作...
2.
设计程序。在对程序需要完成的事情有一个概念性的认识后,就应该决定程序要如何完成它,用户界面应该是怎么样的,程序应该如何组织...
3.
编写代码。在程序有了清晰的设计后,就可以通过编写代码来实现它了。也就是说,将设计构思转变为C语言。一般来说...
4.
编译源代码。编译细节取决于编程环境,编译器还检查程序是否为有效的C语言程序。

❾ c语言程序设计

#include<stdio.h>

voidfindMax(inta[3][3]){
intmaxi=0;
intmaxj=0;
intmax=0;
intt;
inti=0;
intj=0;
max=a[0][0];
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(a[i][j]>=max){
maxi=i;
maxj=j;
max=a[i][j];
}
}
}
t=a[1][1];
a[1][1]=a[maxi][maxj];
a[maxi][maxj]=t;
}

intfindMin(inta[3][3]){
intmini=0;
intminj=0;
intmin=0;
intt;
inti=0;
intj=0;
min=a[0][0];
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(a[i][j]<=min){
mini=i;
minj=j;
min=a[i][j];
}
}
}
t=a[0][0];
a[0][0]=a[mini][minj];
a[mini][minj]=t;
returnmin;
}

voidfindTheSecMinNum(inta[3][3],intmin){
intnumi=0;
intnumj=0;
intnum=0;
intt;
inti=0;
intj=0;
num=a[0][1];
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(a[i][j]==min){
numi=i;
numj=j+1;
num=a[i][j+1];
}elseif(a[i][j]>min&&a[i][j]<num){
numi=i;
numj=j;
num=a[i][j];
}
}
}
t=a[2][2];
a[2][2]=a[numi][numj];
a[numi][numj]=t;
}

voidprint(inta[3][3]){
inti=0;
intj=0;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf("%d,",a[i][j]);
}
printf(" ");
}
}

三个函数,那个找第二个数的程序有点违反编程规范。但是结果倒是没问题。