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

用c语言编写

发布时间: 2022-02-08 17:01:34

‘壹’ 用c语言编程!!

#include <stdio.h>

#include <string.h>

int find(char a[][20],int n,char *s)

{

int i;

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

if(strcmp(a[i],s)==0)

return 1;

return 0;

}

int main()

{

char list[][20]={"192.168.1.1", "10.192.66.72", "10.199.88.132", "192.168.1.1", "1.192.168.163"};

int i;

for(i=0;i<sizeof(list)/sizeof(list[0]);++i)

{

if(find(list+i+1,sizeof(list)/sizeof(list[0])-i-1,list[i])&&!find(list,i,list[i]))

{

puts(list[i]);

}

}

return 0;

}

‘贰’ 用c语言编写

#include<stdio.h>
voidfun(intn){
inti,j;

for(i=1;i<=n;i++){ for(j=1;j<=i;j++){
printf("*");
}


printf(" ");
}
for(i=n;i>=1;i--){
for(j=i;j>=1;j--){
printf("*");
}
printf(" ");
}


}
intmain(){
fun(5);

return0;
}

‘叁’ 用C语言编写这个程序

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

intmain(){
chars[40];
chart[40];
charr[100];
inta=0;
intlens=0;
intlent=0;

scanf("%s",s);
scanf("%s",t);

lens=strlen(s);
lent=strlen(t);

a=strcmp(s,t);
if(a==0){
printf("Twostringsareequal. ");
}elseif(a>0){
strcpy(r,s);
strcpy(r+lens,t);
strcpy(r+lens+lent,"end.");
}else{
strcpy(r,t);
strcpy(r+lent,s);
strcpy(r+lent+lens,"end.");
}
printf("%s ",r);
return0;
}

‘肆’ 用C语言编程

代码文本:

#include "stdio.h"

int main(int argc,char *argv[]){

double s,py;

printf("Please enter your monthly salary... py=");

if(scanf("%lf",&py)==1 && py>0){

s=(py-5000)*0.03*12;

printf("Should pay personal income tax totaled %.2f yuan in 2025. ",s);

}

else

printf("Input error, exit... ");

return 0;

}

注:起征5000元/月,36000元/月以下税率3%。

‘伍’ c语言是用什么语言编写的汇编吗

C语言源自Ken Thompson发明的B语言,而 B语言则源自BCPL语言。

1967年,剑桥大学的Martin Richards对CPL语言进行了简化,于是产生了BCPL(Basic Combined Programming Language)语言。

1972年,美国贝尔实验室的 D.M.Ritchie 在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。


(5)用c语言编写扩展阅读

C语言编译器:

GCC,GNU组织开发的开源免费的编译器

MinGW,Windows操作系统下的GCC

Clang,开源的BSD协议的基于LLVM的编译器

Visual C++:: cl.exe,Microsoft VC++自带的编译器

C语言集成开发环境:

Code::Blocks,开源免费的C/C++ IDE

CodeLite,开源、跨平台的C/C++集成开发环境

Dev-C++,可移植的C/C++IDE

C-Free

Light Table

Visual Studio系列

‘陆’ 用C语言编写

#include<stdio.h>
main()
{
int a[100],i,j,s=0,n=0,m=0;
for(i=0;i<100;i++)
{
scanf("%d",&a[i]);
if(a[i]<0)
break;
}
j=i;
for(i=0;i<j;i++)
{
if(a[i]<60)
n++;
if(a[i]>=80)
m++;
s=s+a[i];
}
s=s/(j-1);
printf("%d %d %d\n",s,n,m);
getch();
}
大哥,你那句以 以负分作为输入结束的标志什么意思,我不太懂哎!

‘柒’ 用c语言编写一个程序

应该多给几个例子,n=10的时候如何处理?得到10,110,210,1210等等?
若是这样的,试试下面程序:
/*
用c语言编写一个程序:对于一个自然数n(n<=50),统计具有下列数字的个数,
并输出所有符合条件的数字:自然数n,在n的左边加上一个自然数,
但该自然数不能超过原数的一半;继续按此规则进行处理,直到不能加自然数为止。
例如当n=6时,符合条件条件的是:6,16,26,36,126,136共6个;
当n=5时,符合条件的是:5,15,25,125.(0也是自然数,所以要加上本身)。。。
*/
#include
<stdio.h>
#include
<stdlib.h>
int
g_count=0;
void
fun(int
n,int
d,int
b)
{
int
i;
printf("%8d
",d);
g_count++;
if(g_count%8==0)
printf("\n");
for(i=1;i<=n/2;i++)
{
fun(i,i*b+d,b*10);
}
}
void
result(int
n)
{
int
t=n,d=n,b=10;
printf("result:\n");
g_count=0;
while(t>=10)
{
t/=10;
b*=10;
}
fun(n,d,b);
printf("\ntotal
%d
numbers\n\n",g_count);
}
int
main()
{
int
n;
printf("input
n(n<=50):\n");
while(scanf("%d",&n)!=EOF)
{
if(n>=0&&n<=50)
result(n);
printf("input
n(n<=50):\n");
}
return
0;
}
我这,若是放开n的限制,n=200的时候,计算花掉20多秒吧,总共205658个。
n=300的话,算了几分钟都没结束。估计也得使用long
long数据类型了。使用递归不是最快的,重复计算多。
网络推荐也不求真相?有误导了吧。
对于楼主新补充的提升,我的程序是这样做的,满足你的要求。

‘捌’ 用C语言编写

#include <stdio.h>

int Fib(int n)

{

if(n<3)

return 1;

return Fib(n-1)+Fib(n-2);

}

int main()

{

int i;

unsigned long sum;

for(i=1,sum=0;i<25;++i)

sum+=Fib(i);

printf("%lu ",sum);

return 0;

}

‘玖’ 用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;

}