| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
编写函数,功能为从键盘输入一字符串,此字符串的长度。主函数输入字符串调用函数,输出结果 
#include<stdio.h> 
int fun(char *p) 
{ 
char *p1=p; 
 while(*p!='\0')           // 判断是否是串尾  
    p++; 
return p-p1;           //两个指针的差为个数 
} 
int main() 
{  char a[100] ; 
    int i ; 
    printf("请输入字符串"); 
    scanf("%s",&a); 
    i= fun(a);              //调用函数 
    printf("%d",i); 
    return 0;} 
 
编写函数,int fun(int lim, int aa[50]) , 该函数的功能是求出小于 lim 的所有素数,并放在 aa 数组中。函 数返回所求出的素数的个数 
#include <stdio.h> 
#include <stdlib.h> 
int fun(int lim,int aa[50]) 
{ 
int i,k,m=0; 
for(i=2;i<=lim;i++)        //求小于lim的所有数从2开始,1不为素数 
    for(k=2;k<=i;k++) 
  {if(k==i)aa[m++]=i; 
      if(i%k==0)break;   //若不是素数退出循环 
    } 
return m; 
} 
int main() 
{ 
int x,a[50]; 
printf("请输入一个数以求它以下的所有素数\n"); 
scanf("%d",&x); 
printf("%d",fun(x,a));   //调用函数fun 
return 0; 
} 
 
 
公司员工基本信息管理程序设计 设计结构体数组,结构中包含数据为:员工编号、姓名、性别、年龄、职务、部门、住址。  
设计各个函数,分别实现以下功能: (1)输入数据 (2)显示所有员工信息 (3) 输入部门、性别,显示该部门的员工记录 设计菜单,通过选择菜单调用以上各函数。 
 
 
#include <stdio.h> 
#include <string.h> 
struct gs                    //定义结构体 
{ 
    int num; 
    char name[30]; 
    char xing[30]; 
    int age; 
    char zhiwu[30]; 
    char bumen[30]; 
    char zhuzhi[30]; 
}yuangong[100]={                            
{01,"员工a","男",18,"职务a","部门a","住址a"}, 
{02,"员工b","女",19,"职务b","部门a","住址b"}, 
{03,"员工c","男",20,"职务c","部门b","住址c"}, 
{04,"员工d","女",21,"职务d","部门b","住址d"}};   //建立结构体数组 
 
void shuru() 
{ 
 int i,b; 
for(i=0;i<100;i++) 
if(yuangong[i].num==0)          //员工编号不为0 
{ 
    printf("请输入员工编号\n"); 
    scanf("%d",&yuangong[i].num); 
     printf("请输入员工姓名\n"); 
    scanf("%s",yuangong[i].name); 
     printf("请输入员工性别\n"); 
    scanf("%s",yuangong[i].xing); 
     printf("请输入员工年龄\n"); 
    scanf("%d",&yuangong[i].age); 
     printf("请输入员工职务\n"); 
    scanf("%s",yuangong[i].zhiwu); 
     printf("请输入员工部门\n"); 
    scanf("%s",yuangong[i].bumen); 
     printf("请输入员工住址\n"); 
    scanf("%s",yuangong[i].zhuzhi); 
    printf("是否继续输入员工信息?\n继续输入请按1   不继续输入员工信息请按任意数字\n"); 
scanf("%d",&b); 
if(b!=1)break;       //退出循环 
} 
} 
 
void xianshi() 
{ 
  int i,b; 
  printf("编号  姓名  性别  年龄    职务      部门      住址  \n"); 
  for(i=0;i<100;i++) 
{ 
if(yuangong[i].num==0)break; 
printf("%d",yuangong[i].num); 
printf("%10s",yuangong[i].name); 
printf("%5s",yuangong[i].xing); 
printf("%5d",yuangong[i].age); 
printf("%10s",yuangong[i].zhiwu); 
printf("%10s",yuangong[i].bumen); 
printf("%10s\n",yuangong[i].zhuzhi); 
} 
printf("请按任意数字返回菜单\n"); 
scanf("%d",&b); 
} 
 
void chaxun() 
{ 
    char x[40],y[40]; 
    int i,b; 
  do{ 
    printf("请输入部门以查询该部门的员工信息\n"); 
    scanf("%s",x);                            //输入字符串 
    printf ("请输入性别以查询该部门员工信息\n"); 
    scanf ("%s",y);                           //输入字符串 
     printf("编号  姓名  性别  年龄    职务      部门      住址  \n"); 
    for(i=0,b=0;i<100;i++) 
    {if(yuangong[i].num==0)                  //若员工编号为零 
     {if(b==i)printf("无此部门或此部门无员工信息\n"); 
         break;         }//退出循环 
     if(strcmp(x,yuangong[i].bumen)==0||strcmp (y,yuangong[i].xing)==0) //若两个字符串相等 
    {printf("%d",yuangong[i].num); 
     printf("%10s",yuangong[i].name); 
     printf("%5s",yuangong[i].xing); 
     printf("%5d",yuangong[i].age); 
     printf("%10s",yuangong[i].zhiwu); 
     printf("%10s",yuangong[i].bumen); 
     printf("%10s\n",yuangong[i].zhuzhi); 
     }  else b++; 
 
  } 
  printf("是否继续查询\n 继续请按1      退出请按任意数字\n"); 
  scanf("%d",&b); 
  if(b!=1)break; 
  }  while(1);  
} 
 
int caidan() 
{ 
 int a,b; 
printf("*****输入员工数据,请按1\n"); 
printf("*显示所有员工信息,请按2\n"); 
printf("*****查询某部门员工记录,请按3\n"); 
printf("*********退出程序,请按4\n"); 
scanf("%d",&a); 
switch(a) 
{ 
case 1:shuru();break;   //调用函数shuru 
case 2:xianshi();break;  //调用函xianshi 
case 3:chaxun();break;  //调用函数chaxun 
case 4:return 0;//返回 
default :printf("项目开发中...\n请按任意数字返回菜单\n"); 
scanf("%d",&b); 
} 
caidan();//调用函数caidan 
return 0; 
} 
 
int main() 
{ 
caidan(); //调用函数caidan 
return 0; 
} 
 
 
这三个程序可能有些不足,希望大佬,帮忙指出并改正,不胜感激。 
 |   
 
 
 
 |