• 关于

    printf

    的搜索结果

问题

C语言printf的使用问题

在写C测试指针的使用的时候,使用printf函数输出,出现了下面的情况,关于指针的问题我已经清楚,希望谁能给我说清楚输出的问题 首先是有下面这样的代码 #include<stdio.h> int main() { int...
a123456678 2019-12-01 19:50:51 797 浏览量 回答数 1

问题

《命令行下做时钟》中奖代码展示(3) —— Shell篇

双11的时候,@阿里云安全 做了一个小活动,想看看有多少人能在命令行下搞出时钟效果,用现成的程序或自己编程都ok。 前面已经放出了高级开发工具实现的一批(涵盖Linux...
虎笑 2019-12-01 21:16:16 9481 浏览量 回答数 2

问题

C语言中各类型数表示范围

![Uploading screenshot . . .]()我知道在limit.h文件里有对应的类型所能表示的最大最小的范围,例如如下程序. void printlimits() { printf("signed char min...
a123456678 2019-12-01 19:51:05 955 浏览量 回答数 1

回答

#include<stdio.h> #include<stdlib.h> #include <math.h> #define L 8 //排序元素个数 #define FALSE 0 #define TRUE 1 typedef struct { int key; char otherinfo; }RecType; typedef RecType Seqlist[L+1]; int num; //定义排序趟数的全局变量 Seqlist R; //直接插入排序 void Insertsort() { int i,j,k,m=0; printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); for(i=2;i<=L;i++) { if(R[i].key<R[i-1].key) { R[0]=R[i]; j=i-1; while(R[0].key<R[j].key) { R[j+1]=R[j]; j--; } R[j+1]=R[0]; } m++; printf("\t\t第%d趟排序结果为(按回车键继续):\n\t\t",m); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); } printf("\n\t\t排序的最终结果是:\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } printf("\n"); } //希尔排序 void Shellsort() { int i,j,gap,x,m=0,k; printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); gap=L/2; while(gap>0) { for(i=gap+1;i<=L;i++) { j=i-gap; while(j>0) { if(R[j].key>R[j+gap].key) { x=R[j].key; R[j].key=R[j+gap].key; R[j+gap].key=x; j=j-gap; } else { j=0; } } } gap=gap/2; m++; printf("\t\t第%d趟排序结果为(按回车键开始排序):\n\t\t",m); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); } printf("\n\t\t排序的最终结果是:\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } printf("\n"); } //冒泡排序 void Bubblesort() { int i,j,k; int exchange; printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); for(i=1;i<L;i++) { exchange=FALSE; for(j=L;j>=i+1;j--) { if(R[j].key<R[j-1].key) { R[0].key=R[j].key; R[j].key=R[j-1].key; R[j-1].key=R[0].key; exchange=TRUE; } } if(exchange) { printf("\t\t第%d趟排序结果为(按回车键开始排序):\n\t\t",i); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); } } printf("\n\t\t排序的最终结果是:\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } printf("\n"); } int Partition(int i,int j) //i和j为形式参数,分别代表low和high { RecType pirot=R[i]; while(i<j) { while(i<j&&R[j].key>=pirot.key) { j--; } if(i<j) { R[i++]=R[j]; } while(i<j&&R[j].key<=pirot.key) { i++; } if(i<j) { R[j--]=R[i]; } } R[i]=pirot; return i; } //递归形式为快速排序 void Quicksort(int low,int high) { int pirotpos,k; if(low<high) { pirotpos=Partition(low,high); num++; printf("\t\t第%d趟排序结果为(按回车键开始排序):\n\t\t",num); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); Quicksort(low,pirotpos-1); Quicksort(pirotpos+1,high); } } //选择排序 void Selectsort() { int i,j,k,h; printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); for(i=1;i<L;i++) { h=i; for(j=i+1;j<=L;j++) { if(R[j].key<R[h].key) { h=j; } } if(h!=j) { R[0]=R[i]; R[i]=R[h]; R[h]=R[0]; } printf("\t\t第%d趟排序结果为(按回车键开始排序):\n\t\t",i); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); } printf("\n\t\t排序的最终结果是:\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } printf("\n"); } void Merge(int low,int mm,int high) { int i=low,j=mm+1,p=0; RecType *R1; R1=new RecType[high-low+1]; if(!R1) { printf("内存容量不够。"); } while(i<=mm&&j<=high) { R1[p++]=(R[i].key<=R[j].key)?R[i++]:R[j++]; } while(i<=mm) { R1[p++]=R[i++]; } while(j<=high) { R1[p++]=R[j++]; } for(p=0,i=low;i<=high;p++,i++) { R[i]=R1[p]; } } void MergePass(int length) { int i; for(i=1;i+2*length-1<=L;i=i+2*length) { Merge(i,i+length-1,i+2*length-1); } if(i+length-1<L) { Merge(i,i+length-1,L); } } //归并排序 void Mergesort() { int length,k,m=0,i; printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); for(length=1;length<L;length*=2) { MergePass(length); m++; printf("\t\t第%d趟排序结果为(按回车键开始排序):\n\t\t",m); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); } printf("\n\t\t排序的最终结果是:\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } printf("\n"); } //堆建 void CreateHeap(int root,int index) { int j,temp,finish; j=2*root; temp=R[root].key; finish=0; while(j<=index&&finish==0) { if(j<index) { if(R[j].key<R[j+1].key) { j++; } } if(temp>=R[j].key) { finish=1; } else { R[j/2].key=R[j].key; j=j*2; } } R[j/2].key=temp; }//堆排序 void Heapsort() { int i,j,temp,k; for(i=(L/2);i>=1;i--) { CreateHeap(i,L); } for(i=L-1,k=1;i>=1;i--,k++) { temp=R[i+1].key; R[i+1].key=R[1].key; R[1].key=temp; CreateHeap(1,i); printf("\t\t第%d趟排序结果为(按回车键开始排序):\n\t\t",k); for(j=1;j<=L;j++) { printf("%5d",R[j].key); } getchar(); printf("\n"); } } void Heap() { int i; printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } getchar(); printf("\n"); Heapsort(); printf("\n\t\t排序的最终结果是:\n\t\t"); for(i=1;i<=L;i++) { printf("%5d",R[i].key); } printf("\n"); } main() { Seqlist S; int i,k; char ch1,ch2,q; printf("\n\t\t1000个随机数产生:\n\t\t"); for(i=1;i<=1000;i++) { S[i].key = rand() % 999 + 1; //产生1-1000的随机数 //printf("%d\n", number); // 去掉注释显示随机数的输出} printf("\n\t\t排序数据已经输入完毕。"); ch1='y'; while(ch1=='y'||ch1=='Y') { printf("\n"); printf("\n\t\t 排 序 子 系 统 \n"); printf("\n\t\t*******************************************\n"); printf("\n\t\t* 1--------更新排序数据 *\n"); printf("\n\t\t* 2--------直接插入排序 *\n"); printf("\n\t\t* 3--------希 尔 排 序 *\n"); printf("\n\t\t* 4--------冒 泡 排 序 *\n"); printf("\n\t\t* 5--------快 速 排 序 *\n"); printf("\n\t\t* 6--------选 择 排 序 *\n"); printf("\n\t\t* 7--------归 并 排 序 *\n"); printf("\n\t\t* 8--------堆 排 序 *\n"); printf("\n\t\t* 0--------返 回 *\n"); printf("\n\t\t*******************************************\n"); printf("\n\t\t 请选择菜单号(0--8):"); scanf("%c",&ch2); getchar(); for(i=1;i<=L;i++) { R[i].key=S[i].key; } switch(ch2) { case '1': printf("\n\t\t请输入%d个待排序数据(按回车键分隔):\n\t\t",L); for(i=1;i<=L;i++) { scanf("%d",&S[i].key); getchar(); printf("\t\t"); } printf("\n\t\t排序数据已经输入完毕。"); break; case '2': Insertsort(); break; case '3': Shellsort(); break; case '4': Bubblesort(); break; case '5': printf("\n\t\t原始数据为(按回车键开始排序):\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } getchar(); printf("\n"); num=0; Quicksort(1,L); printf("\n\t\t排序的最终结果是:\n\t\t"); for(k=1;k<=L;k++) { printf("%5d",R[k].key); } printf("\n"); break; case '6': Selectsort(); break; case '7': Mergesort(); break; case '8': Heap(); break; case '0': ch1='n'; break; default: system("cls"); printf("\n\t\t 对不起,您的输入有误,请重新输入。\n"); break; } if(ch2!='0') { if(ch2=='2'||ch2=='3'||ch2=='4'||ch2=='5'||ch2=='6'||ch2=='7'||ch2=='8') { printf("\n\n\t\t排序输出完毕。"); printf("\n\t\t按回车键返回。"); q=getchar(); if(q!='\xA') { getchar(); ch1='n'; } } } } }
沉默术士 2019-12-02 01:18:58 0 浏览量 回答数 0

问题

单向链表学生姓名和成绩输入过程中无法输入问题

#include <stdio.h> #include <stdlib.h> #include <string.h> void insert_func(void); //void sort_func(v...
a123456678 2019-12-01 19:48:28 735 浏览量 回答数 1

问题

linux shell自动交互问题,求大神解?

test.c: #include &lt;stdio.h&gt; int main() { int sec; do{ printf("++++++++++++++++++++++\n"); ...
a123456678 2019-12-01 19:59:43 1285 浏览量 回答数 1

回答

main() { float x,y,z; scanf("%f%f%f",&x,&y,&z); if(x>y&&x>z) { printf("%f\t",x); if(y>z) printf("%f\t%f\n",y,z); else printf("%f\t%f\n",z,y); } else if(y>x&&y>z) { printf("%f\t",y); if(x>z) printf("%f\t%f\n",x,z); else printf("%f\t%f\n",z,x); } else { printf("%f\t",z); if(x>y) printf("%f\t%f\n",x,y); else printf("%f\t%f\n",y,x); } } 这是我自己写的一个三个数从大到小排列的语句,运行结果正常,不知道对你有没有用处,我是初学的,给点意见哦。
琴瑟 2019-12-02 01:25:07 0 浏览量 回答数 0

回答

#include "stdio.h" #include "windows.h" #include <conio.h> //#include <stdlib.h> #include<math.h> #pragma comment(lib,"winmm.lib") //#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" ) void quicklysort(int *,int ,int );//快速排序算法 void heapadjust(int *,int ,int );//堆调整 void heapsort(int *,int );//堆排序算法 HANDLE hout; SYSTEMTIME st; void setpoint(int x,int y) { COORD tp; tp.X=x; tp.Y=y; SetConsoleCursorPosition(hout,tp); } void main() { system("color 1E"); int i,j; COORD pt; GetLocalTime(&st); hout=GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTitle("排序算法"); setpoint(0,1); printf(" "); printf("┏"); for(i=0;i<9;i++) if(i==4) printf("快速排序算法(升序)"); else printf("━"); printf("┳"); for(i=0;i<10;i++) if(i==4) printf("堆排序算法(降序)"); else printf("━"); printf("┓"); for(i=0;i<20;i++) { setpoint(3,i+2); printf("*"); setpoint(39,i+2); printf("*"); setpoint(75,i+2); printf("*"); } setpoint(3,21); printf("┗"); for(j=0;j<35;j++) if(j==17) printf("┻"); else printf("━"); printf("┛"); pt.X=30; pt.Y=23; SetConsoleCursorPosition(hout,pt); printf("%d-%d-%d %d:%d:%d",st.wYear,st.wMonth,st.wDay,st.wHour,st.wMinute,st.wSecond); for(i=0;i<2;i++) { setpoint(5,2*i+3); if(i==0) { int i,a[10]; printf("随机产生十个数字:"); GetLocalTime(&st); setpoint(5,4); a[0]=st.wMilliseconds%99; printf("%d ",a[0]); for(i=1;i<10;i++) { a[i]=((int)(sqrt(a[i-1])*101))%99; printf("%d ",a[i]); } setpoint(5,5); printf("排序后:"); setpoint(5,6); quicklysort(a,0,9); for(i=0;i<10;i++) printf("%d ",a[i]); } else { int i,a[10]; setpoint(41,3); printf("随机产生十个数字:"); GetLocalTime(&st); setpoint(41,4); a[0]=(st.wMilliseconds+st.wSecond*1000)%99+10; printf("%d ",a[0]); for(i=1;i<10;i++) { a[i]=((int)(sqrt(a[i-1])*11))%90+10; printf("%d ",a[i]); } setpoint(41,5); printf("排序后:"); setpoint(41,6); heapsort(a,9); for(i=0;i<10;i++) printf("%d ",a[i]); setpoint(41,7); printf("堆样式"); i=0; while(i==0) { setpoint(48,8); printf("%d ",a[i]); i++; } setpoint(45,9); while(i>0&&i<3) { printf("%d ",a[i]); i++; } setpoint(43,10); while(i>=3&&i<7) { printf("%d ",a[i]); i++; } setpoint(41,11); while(i>=7&&i<10) { printf("%d ",a[i]); i++; } } } setpoint(25,24); } void quicklysort(int *a,int s,int t) { int i=s,j=t; int temp; temp=a[s]; while(j>i) { while(j>i&&a[j]>temp) j--; if(j>i) a[i]=a[j]; while(j>i&&a[i]<=temp) i++; if(j>i) a[j]=a[i]; } a[i]=temp; if(s<i-1) quicklysort(a,s,i-1); if(i+1<t) quicklysort(a,i+1,t); } void heapadjust(int *a,int s,int t) { int i=s; int j; j=2*i; int temp; temp=a[s]; while(j<=t) { if(j<t && a[j]>a[j+1]) j++; if(temp>a[j]) { a[i]=a[j]; i=j; j=2*i; } else j=t+1; } a[i]=temp; } void heapsort(int *a,int n) { int i; int temp; for(i=n/2;i>=0;i--) heapadjust(a,i,n); for(i=n;i>0;i--) { temp=a[0]; a[0]=a[i]; a[i]=temp; heapadjust(a,0,i-1); } }
沉默术士 2019-12-02 01:18:22 0 浏览量 回答数 0

回答

// ch6m.cpp : 定义控制台应用程序的入口点。 #include<string.h> #include<malloc.h> #include<stdio.h> #define MAXNUM 100 //#define FALSE 0 typedef struct BiTNode { char data; struct BiTNode * lchild,* rchild; }BiTNode; BiTNode * creatNode() { int i,j; char ch; BiTNode *s[100]; printf("请依次输入结点的序号:\n"); scanf("%d",&i); printf("请输入该结点需要存放的字符:\n"); getchar(); scanf("%c",&ch); while(i!=0) { BiTNode * p = (BiTNode*)malloc(sizeof(BiTNode)); p->data = ch; p->lchild = NULL; p->rchild = NULL; s[i] = p; if(i!=1) { j = i/2; if(i%2 == 0) s[j]->lchild = s[i]; else s[j]->rchild = s[i]; } printf("请依次输入第i个结点:\n"); scanf("%d",&i); printf("请输入该结点需要存放的字符:\n"); getchar(); scanf("%c",&ch); } return s[1]; } void PreorderTraverse(BiTNode *b) { if(b!=NULL) { printf("%c ",b->data); printf("\n"); PreorderTraverse(b->lchild); PreorderTraverse(b->rchild); } } int main(void) { int n; BiTNode * b; b=creatNode(); while(1) { printf("\n"); printf("\n"); printf("\n"); printf("-------------菜单-----------------------------\n"); printf(" 按-----------1-------进入先序递归遍历 :\n"); printf("----------------------------------------------\n"); printf(":"); scanf("%d",&n); printf("\n"); printf("\n"); switch(n) { case 1: PreorderTraverse(b);break; } } return 0; }
行者武松 2019-12-02 01:24:40 0 浏览量 回答数 0

问题

v新手关于char的问题,自学不懂

include #include int main(void) { char name [20]; printf("你丫的叫啥?\n"); scanf("%s",&amp;name); printf("“%s”\n",name); p...
a123456678 2019-12-01 20:28:56 944 浏览量 回答数 1

问题

C语言,数据结构,二叉树的递归构造,求大神教导,使其正常运行。

#include <stdio.h> #include <stdlib.h> typedef char ElementType ; struct binaryTreeNode { ElementType ...
a123456678 2019-12-01 19:51:10 1179 浏览量 回答数 1

问题

C语言,数据结构,二叉树的递归构造,求大神教导,使其正常运行。

#include <stdio.h> #include <stdlib.h> typedef char ElementType ; struct binaryTreeNode { ElementType ...
a123456678 2019-12-01 19:51:44 793 浏览量 回答数 1

回答

#include<stdio.h> #include<stdlib.h> #include<malloc.h> #include<string.h> struct student{ //结构体定义 char name[20]; //姓名 int num; //学号 int no; //排名 float score[6]; //各科成绩 float ave; //平均成绩 float tot; //总成绩 struct student *next; }; struct student *head; //定义全局变量 链表头 int i; //定义全局变量 科目总数 void key1(); //用户界面1 void key2(); //用户界面2 void fileinput(void); //文件录入函数 void maninput(void); //手动录入函数 void avetotal(); //求学生平均分总分函数 void number(); //求学生排名函数 void deorder(); //总分由高到低排序 void asorder(); //总分由低到高排序 void numorder(); //学号由小到大排序 void dictionary(); //按字典顺序排序 void output(); //输出函数 void save(); //保存函数 void senum(); //学号查找函数 void senam(); //名字查找函数 void modify(); //学生信息修改函数 void del(); //删除学生信息函数 void add(); //增加学生信息函数 void analy(); //统计各科各类别人数 void ansave(int a[6][5],float b[6][5]); //统计结果保存函数 void caculate(); //统计各科平均分及总分 void key1(){ //用户界面1 int j; printf("\n\n\t\\****************欢迎来到学生管理系统*******************\\\n"); printf("\tRead a file\n"); printf("\t1.文件录入\n"); printf("\t1.Record from file\n"); printf("\t2.手动录入\n"); printf("\t2.Append record manually\n"); printf("\t0.exit\n"); printf("\t请输入你选择的录入方式:"); scanf("%d",&j); switch(j) { case 1:fileinput();break; //调用文件录入函数 case 2:maninput();break; //调用手动输入函数 case 0:exit(0);break; //退出 default:{ printf("\n\t请重新选择"); key1();} } } void fileinput(void) //文件录入函数 { FILE *fp; struct student *p1=NULL,*p2=NULL; int j,k,l; char filename[20]; printf("\n\n\t请输入文件路径:"); //键盘输入文件名 scanf("%s",filename); if((fp=fopen(filename,"r"))==NULL) { printf("\n\t对不起,文件错误,打开文件失败"); exit(0); } printf("\n\t文件打开成功....."); printf("\n\t请输入科目总数:"); scanf("%d",&i); printf("\n\t请输入录入人数:"); scanf("%d",&j); head=p1=(struct student*)malloc(sizeof(struct student)); for(l=1;l<=j;l++) { fscanf(fp,"%s",p1->name); fscanf(fp,"%d",&p1->num); for(k=0;k<i;k++) fscanf(fp,"%f",&p1->score[k]); p1->next=(struct student*)malloc(sizeof(struct student)); p2=p1; p1=p1->next; } p1->next=NULL; p2->next=NULL; fclose(fp); printf("\n\t文件录入成功....."); } void maninput(void){ //手动录入函数 struct student *p1=NULL,*p2=NULL; int j; char ch; printf("\n\t请输入录入科目总数:"); scanf("%d",&i); head=p1=(struct student*)malloc(sizeof(struct student)); printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf("\n\t"); scanf("%s%d",p1->name,&p1->num); for(j=0;j<i;j++) scanf("%f",&p1->score[j]); printf("\n\t是否继续输入(y/n):"); getchar(); ch=getchar(); printf("\n\t"); while(ch=='y') { p2=(struct student*)malloc(sizeof(struct student)); scanf("%s%d",p2->name,&p2->num); for(j=0;j<i;j++) scanf("%f",&p2->score[j]); printf("\n\t是否继续输入(y/n):"); getchar(); ch=getchar(); printf("\n\t"); p1->next=p2; p1=p2; }; p1->next=NULL; printf("\n\t手动录入成功......"); printf("\n\t进入功能菜单"); } void avetotal(){ //求学生平均分总分 struct student *p1=NULL,*p2=NULL; int k; p1=head; while(p1!=NULL) { p1->tot=0; for(k=0;k<i;k++) p1->tot=p1->tot+p1->score[k]; p1->ave=p1->tot/i; p2=p1; p1=p1->next; } } void number(){ //求学生排名函数 struct student *p1=NULL,*p2=NULL,*p3=NULL; bool flag; int j=1; p3=p1=head; p2=p1->next; do{ if(p2==NULL) { p1->no=1; break; } flag=false; if((p1->tot)<(p2->tot)) { p1->next=p2->next; p2->next=p1; head=p2; p2=p1->next; p3=head; flag=true; } else{ p2=p2->next; p1=p1->next; }; while(p2!=NULL) { if((p1->tot)<(p2->tot)) { p1->next=p2->next; p3->next=p2; p2->next=p1; p3=p2; p2=p1->next; //调用交换函数 flag=true; } else { p2=p2->next; p1=p1->next; p3=p3->next; }; }; p3=p1=head; p2=p1->next; }while(flag); while(p1!=NULL) { p1->no=j; j++; p1=p1->next; } } void key2(){ //用户界面2 int j; char ch; printf("\n\n\n\n\n\t"); printf("\n\t***********************主菜单*****************************"); printf("\n\n\t"); printf("\n\t*********************排序区域(Sort)***********************"); printf("\n\t1. Sort in descending order by total score of every student"); printf("\n\t2. Sort in ascending order by total score of every student"); printf("\n\t3. Sort in ascending order by number"); printf("\n\t4. Sort in dictionary order by name"); printf("\n"); printf("\n\t*********************查询区域(Search)********************"); printf("\n\t5. Search by number"); printf("\n\t6. Search by name"); printf("\n\t"); printf("\n\t*********************修改区域(Modify)**********************"); printf("\n\t7. Modify information of student"); printf("\n\t8. Delete student"); printf("\n\t9. Add student"); printf("\n\t"); printf("\n\t*********************课程操作区域(Course)******************"); printf("\n\t10. Statistic analysis for every course"); printf("\n\t11.Calculate total and average score of every course"); printf("\n\t*********************保存文件区域(Save)********************"); printf("\n\t12.Write to a file"); printf("\n\t0.exit"); printf("\n\t请输入你的选择:"); scanf("%d",&j); switch(j) { case(1):deorder();break; //调用升序函数 case(2):asorder();break; //调用降序函数 case(3):numorder();break; //调用学号排序函数 case(4):dictionary();break; //调用字典排序函数 case(5):senum();break; //调用学号查询函数 case(6):senam();break; //调用名字查找函数 case(7):modify();break; //调用修改学生信息函数 case(8):del();break; //调用删除学生信息函数 case(9):add();break; //调用增加学生信息函数 case(10):analy();break; //调用各科各类别统计函数 case(11):caculate();break; //调用统计各科总分及平均分函数 case(12):save(); //调用保存函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 case(0):exit(0); //停止运行 default:{ printf("\n\t请重新选择"); key2();} } } void deorder(){ //总分由高到低排序 struct student *p1=NULL,*p2=NULL,*p3=NULL; bool flag; char ch; p3=p1=head; p2=p1->next; do{ if(p2==NULL) break; flag=false; if((p1->tot)<(p2->tot)) { p1->next=p2->next; p2->next=p1; head=p2; p2=p1->next; p3=head; flag=true; } else{ p2=p2->next; p1=p1->next; }; while(p2!=NULL) { if((p1->tot)<(p2->tot)) { p1->next=p2->next; p3->next=p2; p2->next=p1; p3=p2; p2=p1->next; //调用交换函数 flag=true; } else { p2=p2->next; p1=p1->next; p3=p3->next; }; }; p3=p1=head; p2=p1->next; }while(flag); output(); //调用输出函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 else printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void asorder(){ //总分由低到高排序 struct student *p1=NULL,*p2=NULL,*p3=NULL; bool flag; char ch; p3=p1=head; p2=p1->next; do{ if(p2==NULL) break; flag=false; if((p1->tot)>(p2->tot)) { p1->next=p2->next; p2->next=p1; head=p2; p2=p1->next; p3=head; flag=true; } else{ p2=p2->next; p1=p1->next; }; while(p2!=NULL) { if((p1->tot)>(p2->tot)) { p1->next=p2->next; p3->next=p2; p2->next=p1; p3=p2; p2=p1->next; flag=true; } else { p2=p2->next; p1=p1->next; p3=p3->next; }; }; p3=p1=head; p2=p1->next; }while(flag); output(); //调用输出函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 else printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void output(){ //输出函数 struct student *p1=NULL; int j; printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf(" 平均分 总分 排名"); printf("\n\t"); p1=head; while(p1!=NULL) { printf("%-13s%-6d",p1->name,p1->num); for(j=0;j<i;j++) printf("%-7.1f",p1->score[j]); printf("%-7.1f%7.1f%4d",p1->ave,p1->tot,p1->no); printf("\n\t"); p1=p1->next; } } void numorder(){ //学号排序 struct student *p1=NULL,*p2=NULL,*p3=NULL; bool flag; char ch; p3=p1=head; p2=p1->next; do{ if(p2==NULL) break; flag=false; if((p1->num)>(p2->num)) { p1->next=p2->next; p2->next=p1; head=p2; p2=p1->next; p3=head; flag=true; } else{ p2=p2->next; p1=p1->next; }; while(p2!=NULL) { if((p1->num)>(p2->num)) { p1->next=p2->next; p3->next=p2; p2->next=p1; p3=p2; p2=p1->next; flag=true; } else { p2=p2->next; p1=p1->next; p3=p3->next; }; }; p3=p1=head; p2=p1->next; }while(flag); output(); //调用输出函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 else printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void dictionary(){ //字典排序 struct student *p1=NULL,*p2=NULL,*p3=NULL; bool flag; char ch; p3=p1=head; p2=p1->next; do{ if(p2==NULL) break; flag=false; if(strcmp(p1->name,p2->name)>0) { p1->next=p2->next; p2->next=p1; head=p2; p2=p1->next; p3=head; flag=true; } else{ p2=p2->next; p1=p1->next; }; while(p2!=NULL) { if(strcmp(p1->name,p2->name)>0) { p1->next=p2->next; p3->next=p2; p2->next=p1; p3=p2; p2=p1->next; flag=true; } else { p2=p2->next; p1=p1->next; p3=p3->next; }; }; p3=p1=head; p2=p1->next; }while(flag); output(); //调用输出函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 else printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void save(){ //保存函数 char filename[20]; FILE *fp; struct student *p1=NULL; int k; p1=head; printf("\n\t请输入你要保存到的目标文件:"); scanf("%s",filename); if((fp=fopen(filename,"w"))==NULL) { printf("\n\t对不起,文件打开失败!!!"); save(); exit(0); } while(p1!=NULL) { fprintf(fp,"%20s%6d",p1->name,p1->num); for(k=0;k<i;k++) fprintf(fp,"%6.1f",p1->score[k]); fprintf(fp,"%6.1f%7.1f%4d\n",p1->ave,p1->tot,p1->no); p1=p1->next; } fclose(fp); printf("\n\t保存成功....."); } void senum(){ //学号查询函数 int n,j; char ch; bool flag; struct student *p1; do { flag=true; printf("\n\t请输入该学生学号:"); scanf("%d",&n); p1=head; while(p1!=NULL) { if(p1->num==n) { flag=false; printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf(" 平均分 总分 排名"); printf("\n\t"); printf("%-10s%-6d",p1->name,p1->num); for(j=0;j<i;j++) printf("%-7.1f",p1->score[j]); printf("%-7.1f%7.1f%4d",p1->ave,p1->tot,p1->no); break; } p1=p1->next; } if(flag) printf("\n\t对不起,该学号不存在!!!!"); printf("\n\t是否继续查找(y/n):"); getchar(); ch=getchar(); }while(ch=='y'); printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void senam(){ //名字查询函数 int j; bool flag; char ch,na[20]; struct student *p1; do { printf("\n\t请输入该学生姓名:"); scanf("%s",na); p1=head; flag=true; while(p1!=NULL) { if(strcmp(p1->name,na)==0) { flag=false; printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf(" 平均分 总分 排名"); printf("\n\t"); printf("%-10s%-6d",p1->name,p1->num); for(j=0;j<i;j++) printf("%-7.1f",p1->score[j]); printf("%-7.1f%7.1f%4d",p1->ave,p1->tot,p1->no); } p1=p1->next; } if(flag) printf("\n\t对不起,该学生不存在!!!"); printf("\n\t是否继续查找(y/n):"); getchar(); ch=getchar(); }while(ch=='y'); printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void modify(){ //修改学生信息函数 int n,j; char ch; bool flag; struct student *p1=NULL; do{ flag=true; p1=head; printf("\n\t请输入修改学生的学号:"); scanf("%d",&n); while(p1!=NULL) { if(p1->num==n) { flag=false; printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf(" 平均分 总分 排名"); printf("\n\t"); printf("%-13s%-6d",p1->name,p1->num); for(j=0;j<i;j++) printf("%-7.1f",p1->score[j]); printf("%-7.1f%7.1f%4d",p1->ave,p1->tot,p1->no); printf("\n\t是否修改(y/n):"); getchar(); ch=getchar(); if(ch=='n')break; printf("\n\t请重新输入该学生信息.."); printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf("\n\t"); scanf("%s%d",p1->name,&p1->num); for(j=0;j<i;j++) scanf("%f",&p1->score[j]); printf("\n\t修改成功...."); break; } p1=p1->next; } if(flag) printf("\n\t对不起,该学号不存在!!!!"); printf("\n\t是否继续修改(y/n):"); getchar(); ch=getchar(); }while(ch=='y'); avetotal(); //调用求总分平均分函数 number(); //调用求排名函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void del(){ //删除学生信息函数 struct student *p1=NULL,*p2=NULL; int n,j; bool flag; char ch; do{ flag=true; printf("\n\t请输入删除学生的学号:"); scanf("%d",&n); p1=head; p2=p1->next; if(p1->num==n) { flag=false; printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf(" 平均分 总分 排名"); printf("\n\t"); printf("%-13s%-6d",p1->name,p1->num); for(j=0;j<i;j++) printf("%-7.1f",p1->score[j]); printf("%-7.1f%7.1f%4d",p1->ave,p1->tot,p1->no); printf("\n\t是否修改(y/n):"); getchar(); ch=getchar(); if(ch=='n')break; free(p1); head=p1=p2; p2=p1->next; printf("\n\t删除成功...."); } while(p2!=NULL) { if(p2->num==n) { printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf(" 平均分 总分 排名"); printf("\n\t"); printf("%-13s%-6d",p1->name,p1->num); for(j=0;j<i;j++) printf("%-7.1f",p1->score[j]); printf("%-7.1f%7.1f%4d",p1->ave,p1->tot,p1->no); printf("\n\t是否修改(y/n):"); getchar(); ch=getchar(); if(ch=='n')break; flag=false; p1->next=p2->next; free(p2); printf("\n\t删除成功...."); break; } p1=p2; p2=p1->next; } if(flag) printf("\n\t对不起,该学号不存在!!!!"); printf("\n\t是否继续删除(y/n):"); getchar(); ch=getchar(); }while(ch=='y'); number(); //调用求排名函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void add(){ //增加学生信息函数 struct student *p1; int j; char ch; do{ p1=(struct student*)malloc(sizeof(struct student)); printf("\n\t姓名 学号"); for(j=1;j<=i;j++) printf(" 成绩%d",j); printf("\n\t"); scanf("%s%d",p1->name,&p1->num); for(j=0;j<i;j++) scanf("%f",&p1->score[j]); p1->next=head; head=p1; printf("\n\t添加成功...."); printf("\n\t是否继续添加(y/n):"); getchar(); ch=getchar(); }while(ch=='y'); avetotal(); //调用求总分平均分函数 number(); //调用求排名函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void analy(){ //统计各科各类别人数函数 struct student *p1; int cou[6][5]; float per[6][5]; int j,k,l=0; char ch; for(j=0;j<i;j++) for(k=0;k<5;k++) cou[j][k]=0; //计数器清零 p1=head; while(p1!=NULL) { l++; for(j=0;j<i;j++) { if(p1->score[j]>=90) cou[j][0]++; else if(p1->score[j]>=80) cou[j][1]++; else if(p1->score[j]>=70) cou[j][2]++; else if(p1->score[j]>=60) cou[j][3]++; else cou[j][4]++; } p1=p1->next; } printf("\n\t"); for(j=1;j<=i;j++) //输出统计结果 printf("科目%d ",j); printf("\n100-90"); for(j=0;j<i;j++) { per[j][0]=cou[j][0]*1.0/l; printf("%2d(%3.2f)",cou[j][0],per[j][0]); } printf("\n89-80 "); for(j=0;j<i;j++) { per[j][1]=cou[j][1]*1.0/l; printf("%2d(%3.2f)",cou[j][1],per[j][1]); } printf("\n79-70 "); for(j=0;j<i;j++) { per[j][2]=cou[j][2]*1.0/l; printf("%2d(%3.2f)",cou[j][2],per[j][2]); } printf("\n69-60 "); for(j=0;j<i;j++) { per[j][3]=cou[j][3]*1.0/l; printf("%2d(%3.2f)",cou[j][3],per[j][3]); } printf("\n59-0 "); for(j=0;j<i;j++) { per[j][4]=cou[j][4]*1.0/l; printf("%2d(%3.2f)",cou[j][4],per[j][4]); } printf("\n\t是否保存统计结果到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') ansave(cou,per); //调用统计结果保存函数 printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存学生信息到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void ansave(int a[6][5],float b[6][5]){ //统计结果保存函数 FILE *fp; int j; char filename[20]; printf("\n\t请输入保存的文件名:"); scanf("%s",filename); if((fp=fopen(filename,"w"))==NULL) { printf("\n\t对不起,文件打开失败!!!!"); key2(); } for(j=1;j<=i;j++) fprintf(fp,"科目%d ",j); fprintf(fp,"\n100-90"); for(j=0;j<i;j++) fprintf(fp,"%2d(%3.2f)",a[j][0],b[j][0]); fprintf(fp,"\n89-80 "); for(j=0;j<i;j++) fprintf(fp,"%2d(%3.2f)",a[j][1],b[j][1]); fprintf(fp,"\n79-70 "); for(j=0;j<i;j++) fprintf(fp,"%2d(%3.2f)",a[j][2],b[j][2]); fprintf(fp,"\n69-60 "); for(j=0;j<i;j++) fprintf(fp,"%2d(%3.2f)",a[j][3],b[j][3]); fprintf(fp,"\n59-0 "); for(j=0;j<i;j++) fprintf(fp,"%2d(%3.2f)",a[j][4],b[j][4]); fclose(fp); printf("\n\t保存成功......"); } void caculate(){ //统计各科总分平均分函数 struct student *p1=NULL; float to[6],av[6]; int j,l=0; char ch; for(j=0;j<6;j++) to[j]=0; p1=head; while(p1!=NULL) { l++; for(j=0;j<i;j++) to[j]=to[j]+p1->score[j]; p1=p1->next; } for(j=0;j<i;j++) av[j]=to[j]*1.0/l; printf("\n\t"); for(j=1;j<=i;j++) //输出统计结果 printf("科目%d ",j); printf("\n总分 "); for(j=0;j<i;j++) printf("%8.1f",to[j]); printf("\n平均分"); for(j=0;j<i;j++) printf("%8.1f",av[j]); printf("\n\t是否返回主菜单(y/n):"); getchar(); ch=getchar(); if(ch=='y') key2(); //调用用户界面2 printf("\n\t是否保存学生信息到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 exit(0); } void main(){ char ch; key1(); avetotal(); number(); key2(); printf("\n\t是否保存修改到文件(y/n):"); getchar(); ch=getchar(); if(ch=='y') save(); //调用保存函数 }
a123456678 2019-12-02 02:00:54 0 浏览量 回答数 0

回答

#include<stdio.h> int main() { int a[10]; printf("Please input 10 numbers:\n"); int i,j,temp; for(i=0;i<10;i++) scanf("%d",&a[i]); printf("Your numbers are:\n"); for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n\nPai xu guo cheng:\n"); for(i=0;i<10;i++) { for(j=0;j<10-1-i;j++) { if(a[j]>a[j+1]) { temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } for(j=0;j<10;j++) printf("%d ",a[j]); printf("\n"); } printf("\nThe result is:\n"); for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); return 0; } 不知道你要求的是那种排序方法,我写了个冒泡的,你看看嘛。
青衫无名 2019-12-02 01:18:33 0 浏览量 回答数 0

问题

注释掉printf语句程序出现段错误

最近在Linux下开发一个软件,为了调试方便加入了printf语句输出相关变量的值,开发完成后软件运行很正常,可当我把printf语句注释掉后再运行软件却总是出现segment fault,若把printf语句加上又能正常运行,按理说注释掉...
杨冬芳 2019-12-01 20:25:14 1096 浏览量 回答数 1

问题

linux fork 父子进程共享指针

int main (void) { int *p = malloc(sizeof(int)); *p = 0; printf("start main()\n"); int pid = fork(); if (pi...
a123456678 2019-12-01 19:54:26 890 浏览量 回答数 1

回答

可以利用fcntl来获取一个fd的属性,然后通过掩码获知是否有某个具体属性 #include <fcntl.h> #include <stdio.h> #include <stdlib.h> int main() { int fd = open("test", O_RDONLY | O_APPEND, S_IRUSR); int flags = fcntl(fd, F_GETFL); if (flags == -1) { perror("fcntl"); exit(1); } else { int access_mode = flags & O_ACCMODE; switch(access_mode) { case O_RDWR: printf("wr"); break; case O_RDONLY: printf("r"); break; default: printf("w"); } printf("\t"); if (flags & O_APPEND) { printf("append "); } if (flags & O_CREAT) { printf("create "); } if (flags & O_TRUNC) { printf("truncate "); } printf("\n"); } return 0; } 看了下fdopen的源码,似乎仅需要判断O_ACCMODE部分是否允许了读/写权限就够了。
a123456678 2019-12-02 02:39:02 0 浏览量 回答数 0

问题

打印星星三角形的问题

void option (int lineNumber) { int mode; int list; int star; int line; mode = lineNumber % 2; if(mode = 0) { for(lin...
a123456678 2019-12-01 20:27:13 1008 浏览量 回答数 1

回答

我打断点简单测了一下,符合我的猜想,即:先执行 BTreeCreate(&t);第一次递归,走的是 char x; scanf("%c",&x); if(x == ' ')//不符合 (*T) = NULL; else { //进入else (*T) = (BinaryTreeNode *)malloc(sizeof(BinaryTreeNode)); (*T)->data = x; /*三行printf用于检验,发现下面printf语句会发生重复,我百思不得其解,求指导*/ //输入a之后,走下面的代码(若没有输入就会在else到printf之间循环递归) //打印第一次printf printf("%d\n",(*T)); printf("%d\n",(*T)->LeftChild); printf("%d\n",(*T)->RightChild); //执行LeftChild的创建,进入第二次递归
a123456678 2019-12-02 02:41:33 0 浏览量 回答数 0

问题

linux fork的一些问题

#include &lt;stdio.h&gt; int main() { printf("Hello"); //fflush(0); //fflush(s...
云栖技术 2019-12-01 19:45:05 894 浏览量 回答数 1

回答

for (int i = 1; i <= 9; i++) { for (int j = 1; j <= 9 - i; j++) { printf(" "); } for (int j = 1; j <= 2 * i - 1; j++) { printf("*"); } printf("\n"); } for(int i = 9;i>0;i--) { for(int j = 1; j<=9-i; j++) { printf(" "); } for(int j = 1; j<2*i-1; j++) { printf("*"); } printf("\n"); }
a123456678 2019-12-02 02:15:03 0 浏览量 回答数 0

回答

表格上可能有点不同,你可以再改改 #include<stdio.h> int main() { int a[8],s=0; printf("----------商家商品销售统计----------\n"); printf("\n"); printf("请输入商品6个月的销售量:"); for (int i = 0; i < 6; i++) { scanf("%d", &a[i]); s += a[i]; } printf("\n\t\t\t商品销量表\t\t\t\n"); printf("——————————————————————————————————————————————\n"); for (int i = 1; i <= 8; i++) { if (i <= 6) printf(" %d月份 ", i); else if (i == 7) printf(" 总销售 "); else printf(" 平均销售 \n"); } for (int i = 0; i < 8; i++) { if (i < 6) printf(" %d |", a[i]); else if (i == 6) { a[i] = s; printf(" %d |", a[i]); } else { a[i] = s / 6; printf(" %d |",a[i]); } } return 0; }
DM。 2020-05-27 16:47:34 0 浏览量 回答数 0

问题

运行出现的错误不知道怎么修改,求答案

#include #define Vmas 15 typedef char VType; typedef int EType; typedef struct{ VType vexs[Vmax]; EType edges[Vmax][Vmax...
a123456678 2019-12-01 20:27:51 837 浏览量 回答数 1

回答

编译器就是这么做的,记住就行了,不必太纠结。对linux来说,程序加载后内存是分段的。screenshot 验证: includeint main(){ char a[]="abc";char b[]="abc"; char *c="abc";char *d="abc"; printf("%pn", a);printf("%pn", b);printf("%pn", c);printf("%pn", d);}结果: @ ➜ ~ ./a.out0x7fff52ac3afc0x7fff52ac3af80x10d13cf8a0x10d13cf8a 编译器就是这么做的,记住就行了,不必太纠结。对linux来说,程序加载后内存是分段的。screenshot 验证: includeint main(){ char a[]="abc";char b[]="abc"; char *c="abc";char *d="abc"; printf("%pn", a);printf("%pn", b);printf("%pn", c);printf("%pn", d);}结果: @ ➜ ~ ./a.out0x7fff52ac3afc0x7fff52ac3af80x10d13cf8a0x10d13cf8a
一生有你llx 2019-12-02 02:41:24 0 浏览量 回答数 0

问题

各位,下面程序的运行结果 是什么

#include #include int main(void) { int p=NULL; p=(int)malloc(sizeof(int)); *p=3; printf("p=%p\n",p); printf("*p=%d\n",*...
a123456678 2019-12-01 19:23:22 620 浏览量 回答数 1

问题

关于线程无法退出的问题。

最近写了个线程池的程序,可是在最后线程函数一直无法退出 请各路大神帮忙解答一下。由于行数比较多就不全贴出来了。线程池实现:析构函数: TthreadControl::~TthreadControl(){ while( numOfWaitJo...
a123456678 2019-12-01 20:06:11 977 浏览量 回答数 1

问题

printf("%p",a) 和 printf("%p",&a) 的区别

printf("%p",a) 和 printf("%p",&amp;a) 的区别...
a123456678 2019-12-01 19:44:01 925 浏览量 回答数 1

问题

C中局部变量指针问题

先提问题,在类似如下的函数中: char *GetMemory(void) { char p[] = "hello world"; printf("%p\n",p); return p; } 问题1: printf("...
a123456678 2019-12-01 19:45:40 942 浏览量 回答数 1

问题

宏中使用函数名的问题

#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #define call_optimized(function, arguments) {\ printf("\n-------...
杨冬芳 2019-12-01 19:34:10 983 浏览量 回答数 1

问题

c语言中函数中变量范围的问题?

ATT 测试环境:vs2013 win7直接上代码 # include <stdio.h> # include <stdlib.h> void switch_a () //声明switch_a函数 void menu...
a123456678 2019-12-01 19:22:24 1129 浏览量 回答数 1

云产品推荐

上海奇点人才服务相关的云产品 小程序定制 上海微企信息技术相关的云产品 国内短信套餐包 ECS云服务器安全配置相关的云产品 开发者问答 阿里云建站 自然场景识别相关的云产品 万网 小程序开发制作 视频内容分析 视频集锦 代理记账服务 阿里云AIoT