c语言zgi
① c语言编程计算
-----------来自华夏联盟-----------
#include<stdio.h>
intmain(void)
{
doublea,b,c;
scanf("%lf%lf",&a,&b);
c=a+b;
printf("%.0f",c);
return0;
}
还有问题可以继续问我
② C语言设计一个简单的加密解密程序
C语言设计一个简单的加密解密程序如下:
加密程序代码:
#include<stdio.h>
main()
{
char c,filename[20];
FILE *fp1,*fp2;
printf("请输入待加密的文件名:\n");
scanf("%s",filename);
fp1=fopen(filename,"r");
fp2=fopen("miwen.txt","w");
do
{
c=fgetc(fp1);
if(c>=32&&c<=126)
{
c=c-32;
c=126-c;
}
if(c!=-1)
fprintf(fp2,"%c",c);
}
while(c!=-1);
}
解密程序代码:
#include<stdio.h>
#include<string.h>
main()
{
char c,filename[20];
char yanzhengma[20];
FILE *fp1,*fp2;
printf("请输入待解密文件名:\n");
scanf("%s",filename);
printf("请输入验证码:\n");
scanf("%s",yanzhengma);
if(strcmp(yanzhengma,"shan")==0)
{
fp1=fopen(filename,"r");
fp2=fopen("yuanwen.txt","w");
do
{
c=fgetc(fp1);
if(c>=32&&c<=126)
{
c=126-c;
c=32+c;
}
if(c!=-1)
fprintf(fp2,"%c",c);
}
while(c!=-1);
}
else
{
printf("验证码错误!请重新输入:\n");
scanf("%s",filename);
}
}
③ C语言排序修改
因为你的工号是char所以 不能直接这样做if((tp[j].sfgz<tp[j+1].sfgz)),你应该用strcmp函数if(strcmp(tp[j].num,tp[j+1].num)<0),下面对应该过来就行了,good luck
④ 一道c语言问题
#include <stdio.h>
#include <string.h>
#define N 10
typedef struct zg
{ char name[20];
int ID;
}ZG;
ZG zgInfo[N];
void Input()
{ int i;
for(i=0;i<N;i++)
scanf("%s%d",zgInfo[i].name,&zgInfo[i].ID);
}
void sort()
{ int i,j;
ZG t;
for(i=0;i<N-1;i++)
for(j=i+1;j<N;j++)
if(zgInfo[i].ID>zgInfo[j].ID)
{ strcpy(t.name,zgInfo[i].name);
strcpy(zgInfo[i].name,zgInfo[j].name);
strcpy(zgInfo[j].name,t.name);
t.ID=zgInfo[i].ID;
zgInfo[i].ID=zgInfo[j].ID;
zgInfo[j].ID=t.ID;
}
}
void Find(int left,int right,int ID)
{ int mid;
while(left<=right)
{
mid=(left+right)/2;
if(ID>zgInfo[mid].ID)
left=mid+1;
else if(ID<zgInfo[mid].ID)
right=mid-1;
else
{ printf("找到,姓名为:%s\n",zgInfo[mid].name);
return;
}
}
if(left>right)printf("没找到\n");
return;
}
main()
{ int num;
Input();
sort();
printf("请输入学号:");scanf("%d",&num);
Find(0,N-1,num);
}
⑤ 帮忙看看这个C语言哪里错了啊
1.函数这样子定义能行吗?
【void PJ(int a[][5]);
void PJC(int a[][5]);
void ZG(int a[][5]);】
2. 这一段捋捋逻辑,加下大括号
【
for(j=0;j<=4;j++);
for(i=0;i<=9;i++)
z=z+a[i][j];
p=z/10;
printf("第 %d 门课程的平均分为 %lf \n",j+1,p);
】
3. 这个函数【void ZG(int a[][5])】最后少了半个大括号
⑥ C语言如何输出数组最简单的
最简单的不就是printf();吗?
专题http://wenku..com/link?url=-uyBUHv--
⑦ C语言如何给指针分配内存
这是简单的问题,回答却是乱七八糟。
首先指出,new 是 C++ 的东西,不是 C语言。
C语言 **a 实际上 分配内成一个 2 维数组 a[NR][NC]。
char **a;
int j,NR,NC;
// NR = 多少行容,NC = 多少列
NR = 10;
NC = 8; // 假定 8
a = (char **) malloc(sizeof(char *) * NR);
for (j=0;j<NR;j++){
a[j] = (char *) malloc(sizeof(char) * NC);
}
如果是 int,或float,double ,你把上面的char 换成 int,或float,double 就可以了。
⑧ C语言printf("%12.8d\n",12345);和printf("%12.8s\n","abcdefghj");
第一句printf
12.8 中的12表示取屏幕一行中的首12个位供显示,要显示的12345从这12位可供显示位的右 端显示其中最多可显示8为有效数,不够的用0填补
第二句p
同理,只不过abcdefghj有9位,所以只能abcdefgh这8个。如果就8改为大于9的数,如10,
则可以显示完abcdefghj这9位,其中最左边填补一个空格,因为要有10个有效数
⑨ c语言程序输出数字金字塔
给,已经编译运行通过:
#include<conio.h>
#include<stdio.h>
void main()
{
int n;//这个就是定义的你需要输出的行数专
int i,j;
printf("please input the n: ");
scanf("%d",&n);//输入需属要输出的行数
for(i=0;i<n;i++)
{
for(j=0;j<2*(n-1-i);j++) printf(" ");
for(j=0;j<=i;j++) printf("%d",j+1);
for(j=0;j<2*i-1;j++) printf(" ");
for(j=i+1;j>0;j--)
{
if(i==0) break;
printf("%d",j);
}
printf("\n");
}
getch();
}