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