A. 用c语言编写程序

程序就是读取文件到数组,再将数组进行排序,最后写入文件。

读写文件流程:fopen获取文件流(根据读写需求,选择参数,使用完必须调用fclose函数关闭),fscanf读取文件内容,fseek控制文件流指针,fprintf写入文件。

选择排序:每个循环周期选出一个最值,交换一次。

下面是代码(数组为动态数组):

#include <stdio.h>

#include <malloc.h>

int maxLen;//数组长度

int *read2Nums(char path[]);//读取

int write2File(int *nums,char path[]);//写入

void showNums(int *nums);

int px(int *nums,int flag);//选择排序flag=1升序,flag=0降序

int main()

{

int *nums=NULL;

char rPath[]="c:\000.dat",wPath[]="c:\rank.dat";

if(!(nums=read2Nums(rPath))) return 1;

showNums(nums);

printf("数组升序排列: ");

if(px(nums,1)==-1) return 1;

showNums(nums);

printf("数组降序排列: ");

if(px(nums,0)==-1) return 1;

showNums(nums);

printf("写入到文件路径%s下(存在覆盖,不存在新建) ",wPath);

if(write2File(nums,wPath)==-1) return 1;

printf("写入成功! ");

return 0;

}

void showNums(int *nums)

{

int i;

if(nums) for(i=0,printf("文件内容: ");i<maxLen;printf("%d ",nums[i]),i++);

printf(" ");

}

int px(int *nums,int flag)

{

int i,j,n,temp;

if(!nums) return -1;

for(i=0;i<maxLen-1;i++)

{

n=i;

for(j=i+1;j<maxLen;j++)

{

if(flag && nums[n]>nums[j]) n=j;

if(!flag && nums[n]<nums[j]) n=j;

}

temp=nums[i],nums[i]=nums[n],nums[n]=temp;

}

return 1;

}

int write2File(int *nums,char path[])

{

int i;

FILE *fp=NULL;

if(!nums) return -1;

if(!(fp=fopen(path,"w"))) return -1;

//fseek(fp,SEEK_END);

for(i=0;i<maxLen;i++)

fprintf(fp,"%d ",nums[i]);

fclose(fp);

return 1;

}

int *read2Nums(char path[])

{

int *nums=NULL,*temp=NULL,cnt=0;

FILE *fp=NULL;

maxLen=10;

if(!(fp=fopen(path,"r"))) return NULL;

nums=(int *)malloc(sizeof(int)*maxLen);

if(!nums) return NULL;

while(fscanf(fp,"%d",&nums[cnt++])!=-1)

if(cnt==maxLen)//数组长度不够扩展(每次扩展10长度)

{

maxLen=maxLen+10;

temp=(int *)realloc(nums,sizeof(int)*maxLen);

if(temp) return NULL;

nums=temp;

}

if(--cnt<maxLen)//函数结束前,删除多余地址,减少内存占用

{

maxLen=cnt;

temp=(int *)realloc(nums,sizeof(int)*maxLen);

if(!temp) return NULL;

nums=temp;

}

fclose(fp);

return nums;

}

B. 怎么编写C语言程序,如:Helloworld的

代码如下:

#include<stdio.h>

intmain(void)

{

printf("Hello,world!");

return0;

}

一、首先,打开我们的Visual C++ 6.0软件,我使用的为中文版,软件主界面如下图所示:


(2)c语言写程序扩展阅读

C语言的基本构成:

1、数据类型。C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。

2、常量与变量。常量其值不可改变,符号常量名通常用大写。变量是以某标识符为名字,其值可以改变的量。标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。

3、数组。如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,方括内的索引值是从0算起的。

4、指针。

(1)、如果一个变量声明时在前面使用 * 号,表明这是个指针型变量。换句话说,该变量存储一个地址,而 *(此处特指单目运算符 * ,下同。C语言中另有 双目运算符 *) 则是取内容操作符,意思是取这个内存地址里存储的内容。指针是 C 语言区别于其他同时代高级语言的主要特征之一

(2)、指针不仅可以是变量的地址,还可以是数组、数组元素、函数的地址。通过指针作为形式参数可以在函数的调用过程得到一个以上的返回值,不同于return(z)这样的仅能得到一个返回值。

(3)指针是一把双刃剑,许多操作可以通过指针自然的表达,但是不正确的或者过分的使用指针又会给程序带来大量潜在的错误。

5、字符串。C语言的字符串其实就是以''字符结尾的char型数组,使用字符型并不需要引用库,但是使用字符串就需要C标准库里面的一些用于对字符串进行操作的函数。它们不同于字符数组。使用这些函数需要引用头文件<string.h>。

6、文件输入/输出在C语言中,输入和输出是经由标准库中的一组函数来实现的。在ANSI C中,这些函数被定义在头文件<stdio.h>;中。

C. c语言写程序

#include<stdio.h>
inta[1000];
intmain()
{intn,i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=i;j<=n;j+=i)
a[j]=1-a[j];
printf("开着的门:专 ");
for(i=1;i<=n;i++)
if(a[i])printf("%d",i);
printf(" 关着属的门: ");
for(i=1;i<=n;i++)
if(!a[i])printf("%d",i);
return0;
}

D. 用C语言写的程序该怎样执行

看你用来的什么环境,如果源是集成开发环境,可以直接从菜单中选择编译并运行。通过编译链接后的执行程序可以直接在命令行执行。

如果采用命令行编译器,则有很多种,有的一次就成执行文件,如gcc。有的需要分编译和连接两步。如lcc-win32则需要先用lcc编译,得到.obj目的代码,然后再用lcclnk连接.obj成.exe文件。形成的.exe文件与其他命令程序一样可以在DOS窗口执行。

E. c语言写程序

程序参考
#include
<stdio.h>
#include
<string.h>
void
findWord(char
words[][30],int
n,char
maxword[30])
///n是单词数量,
maxword是返回最长的单词
{

int
maxlen,i;

maxlen=strlen(words[0]);

strcpy(maxword,words[0]);

for(i=1;
i<n;
i++)

{

if
(strlen(words[i])>maxlen)

{

maxlen=strlen(words[i]);

strcpy(maxword,words[i]);

}

}
}
int
main()
{

char
s[1000],a[100][30],c,b[30];

int
i,j,ct;

printf("请输入一个串:\n");

gets(s);

j=i=ct=0;

while(c=s[i++])

{

if
(c=='
')
//单词以空格分隔

{

a[ct++][j]='\0';

j=0;

}

else

a[ct][j++]=c;

}

a[ct++][j]='\0';//最后一个

findWord(a,ct,b);

printf("最长的单词为:%s\n",b);

return
0;
}

F. C语言编写程序

#include<stdio.h>

#include<string.h>

int main()

{

char a[11];

gets(a);

for(int i=0;i<strlen(a);i++)

{

if(a[i]!='A'&&a[i]!='a')

printf("%c",a[i]);

}

return 0;

}

G. 如何编写C语言程序

准备材料

windows电脑、VC++(DEV_C++)

1.打开桌面上的DEV_C++,进入如下界面:

H. 如何用c语言写一个这样的程序

能写不过大家应该不会那么闲的帮你全写出来吧。可以帮你实现一部分倒是

I. 编写一个C语言程序

对应题目:

输入n(n<100)个整数,将所有的偶数倒序输出

代码回截图

结果

完整代码

#include<stdio.h>

//输入n(n<100)个整数,将所有的偶数倒序输出

intmain()

{

intn;

intnum[105]={0};

inti=0;

scanf("%d",&n);//输入n

for(i=1;i<=n;i++){//循环n次

scanf("%d",&num[i]);//输入n个整数

}

for(i=n;i>=1;i--){//倒序循环

if(num[i]%2==0){//判断是否为偶数

printf("%d",num[i]);//输出偶数

}

}

return0;

}