• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
计算机三级C语言上机题型
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
计算机三级C语言上机题型
软件发布 计算机三级C语言上机题型
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 认证考试 >> 计算机等级考试 >> 计算机等级考试动态 >> 计算机三级C语言上机题型

计算机三级C语言上机题型

添加时间: 2007-5-9 2:28:22  作者: 计算机等级考试认证参考  阅读次数:131   来源: http://www.d9soft.com

       

一.字符替换

1.函数ReadDat()实现从文件ENG.IN中读取一篇英文文章,存入到字符串数组xx中;请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应的位置上,最后调用函数WriteDat()把结果xx输出到文件PS10.DAT中。
  替代关系:f(p)=p*11 mod 256 (p是数组中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则将f(p)所对应的字符进行替代。
  部分源程序已给出,原始数据文件存放的格式是:每行的宽度均小于80个字符。
void encryptChar()
{
  int i;
  char *pf;
  for(i=0;i   { pf=xx[i];
     while(*pf!=0)
      { if(*pf==*pf/2*2*pf*11%6<32)
         {pf++;continue;}
        *pf=*pf*11%6;
        pf++;
      }
   }
}
void encryptChar()
{
  int i,j,t;
  for(i=0;i  {
    for(j=0;j    {
     t=xx[i][j]*11%6;
     if(t<=32 xx[i][j]%2==0) continue;
      xx[i][j]=t;
    }
  }
}

2. 下列程序的功能是:把s字符串中的所有字母改写成该字母的下一个字符,字母z改写成字母a。要求大写字母仍为大写字母,小写字母仍为小写字母,其他字符不做改变。请编写函数chg(char *s)实现程序的要求,最后调用函数readwriteDat()把结果输出到文件out.dat中。
void chg(char *s)
{
int i,j,k;
k=strlen(s);
for(i=0;i{if(s[i]=='z'//s[i]=='Z' )
   s[i]-=25;
  else
   if(isalpha(s[i]))
    s[i]+=1;
}
}
3、函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请
编制函数CHA(),其函数功能是:以行为单位把字符串中的第一个字符的ASCII值加第二个
字符的ASCII值,得到第一个亲朋字符,第二个字符的ASCII值加第三个字符的ASCII值,
得到第二个新字符,依此类推一直处理到最后第二个字符,最后一个字符的ASCII值加原
第一个字符的ASCII值,得到最后一个新的字符,得到的新字符分别存放在原字符串对应
的位置上。
void ShA(void)
{
  int i,j;
  char t1;
for(i=0;i{t1=xx[i][0];
  for(j=0;xx[i][j+1]!='';j++)
    xx[i][j]=xx[i][j]+xx[i][j+1];
    xx[i][j+1]=xx[i][j+1]+t1;
  }
}
void ShA(void)
{
  int i,j;
  char ch;
for(i=0;i{
   ch=xx[i][0];
   for(j=0;j   xx[i][j]+=xx[i][j+1];
   xx[i][strlen(xx[i])-1]+=ch;
}
}
#p# 二、字符串左右排序和比较。
1. 函数ReadDat()实现从文件in.dat中读取20行数据存放到字符串数组xx中(第行字符串长度均小于80)。请编制函数jsSort(),其函数的功能是:以行为单位对字符串变量的下标为奇数的字符按其ASCII值从小到大的顺序进行排序,排序后的结果仍按行重新存入字符串数组xx中,最后调用函数WriteDat()把结果xx输出到文件out.dat中。
void jsSort()
{
  int i,j,k,strl;
  char temp;
  for(i=0;i<20;i++)
   {
     strl=strlen(xx[i]);
       for(k=1;k         for(j=k+2;j            if(xx[i][k]>xx[i][j])
              {
                temp=xx[i][k];
                xx[i][k]=xx[i][j];
                xx[i][j]=temp;
              }
   }
}
2、函数READDAT()实现从文件IN.DAT中读取一篇英文文章存入到字符串数组XX中;请
编制函数SORTCHARA(),其函数功能是:以行为单位对字符按从小到大的顺序进行排序,排
序后的结果仍按行重新存入字符串数组XX中,最后调用函数WRITEDAT()把结果XX输出到文
件OUT.DATK .
void sortcharA(void)
{
  int i,j,k,strl;
char ch;
for(i=0;i   { strl=strlen(xx[i]);
      for(j=0;j        for(k=j+1;k          if(xx[i][j]>xx[i][k])
           { ch=xx[i][k];
             xx[i][k]=xx[i][j];
             xx[i][j]=ch;
           }
   }
}
3、下列程序的功能是:把S字符串中的所有字符左移一个位置,串中的第一个字符移到最
后.请编写函数CHG(CHAR *S)实现程序要求,最后调用函数READWRITEDAT()把结果输出到
OUT.DAT文件中.
void chg(char *s)
{
   int i=strlen(s);
   char c=*s;
   strcpy(s,s+1);
   *(s+i-1)=c;
    *(s+i)='';
}
4.题 函数loop(s,m,n,str)对长为n的字符串str,从第s个字符开始的间隔为m的部分字符进行循环左移,即str[s]←str[s+m]←...←str[s+km]←...←str[s](k为正整数)且当字符位置s+k*m大于等于n时,要求用s+k*m-n作新的字符位置。要求编写此函数实现其功能,最后调用函数WriteDat()把结果输出到文件out.dat中。例:loop(1,2,8,str)
     位置 0 1 2 3 4 5 6 7
调用前str=A B C D E F G H
调用后str=A D C F E H G B

Loop(int s,int m,int n,char str[])
{  int cuur,last,i=0;
   char ch;
   last=s;
   ch=str[s];
   while(++i)
    { cuur=last;
     last=(s+i*m)%n;
     if(last>=s&&s+i*m>n) break;
     str[cuur]=str[last];
    }
str[cuur]=ch;
}
loop(int s,int m,int n,char str[])
{
  int kk=s;
  char ch=str[s];
  while((kk+m)%n!=s)
   {
     str[kk]=str[(kk+m)%n];
     kk=(kk+m)%n;
    }
    str[kk]=ch;
}

5.请编制函数jsSort(),其函数的功能是:以行为单位对字符串按给定的条件进行排序,排序后的结果仍按行重新存入字符串数组xx中.  条件:从字符串中间一分为二,左边部分按字符的ASCII值升序排序,右边部分按字符的ASCII值降序排序。如果原字符串长度为奇数,则最中间的字符不参加排序,字符仍放在原位置上。
void jsSort()
{
  int i,j,k,strl;
  char ch;
  for(i=0;i<20;i++)
   {
     strl=strlen(xx[i]);
     for(j=0;j      for(k=j+1;k       if(xx[i][j]>xx[i][k])
        {
         ch=xx[i][j];
         xx[i][j]=xx[i][k];
         xx[i][k]=ch;
        }
     for(j=(strl+1)/2;j       for(k=j+1;k        if(xx[i][j]           {
              ch=xx[i][j];
              xx[i][j]=xx[i][k];
              xx[i][k]=ch;
           }
   }
}
#p# 三、字符串(单词)的倒置和删除。
1.        以行为单位对行中以空格或标点符号为分隔的所有单词进行倒排。最后把已处理的字符串(应不含标点符号)仍按行重新存入字符串数组xx中.
例如:原文:You He Me
            I am a student.
   结果:Me He You
            student a am I
void Str0L(void)
{
int i,k;
char *p1,*p2;
char t[80],t1[80];
for(i=0;i  { p2=p1=strchr(xx[i],'')-'';
    t[0]=t1[0]='';
    k=1;
   while(k)
     {
       while(isalpha(*p1)==0&&p1!=xx[i]) {p1--;p2=p1;}
       while(isalpha(*p1)&&p1>=xx[i]) p1--;
        memcpy(t1,p1+1,p2-p1);
        t1[p2-p1]=0;
        strcat(t,t1);
        strcat(t," ");
        if(p1     }
       strcpy(xx[i],t);
  }
}
2.以行为单位把字符串中的所有小写字母O左边的字符串
内容移到该串的右边存放,然后并把小写字母O删除,余下的字符串内容移到已处理字符串
的左边存放.最后把已处理的字符串仍按行重新存入字符串数组XX中.
void StrOR(void)
{
   int i;
   char *p1,*p2,t[80];
   for(i=0;i     {  t[0]='';
        p2=xx[i];
        while(*p2)
         { if(*p2=='o') p1=p2;
           p2++;
         }
        strcat(t,p1+1);
        *p1='';
        strcat(t,xx[i]);
        p1=xx[i];
        p2=t;
         while(*p2)
           { if(*p2!='o') *p1++=*p2;
               p2++;
            }
         *p1='';
    }
}
#p# 四、正整数排序求平均值(包括将数拆散、求最大最小值)。
1.在文件中有200个正整数,且每个数均在1000至9999之间。函数ReadDat()读取这200个数存放到数组aa中。请编制函数jsSort(),其函数的功能是:要求按每个数的后三位的大小进行升序排列,然后取出满足此条件的前10个数依次存入数组b中,如果后三位的数值相等,则按原先的数值进行降序排列。最后调用函数WriteDat()把结果bb输出到文件out.dat中。
例:处理前 6012 5099 9012 7025 8088
处理后 9012 6012 7025 8088 5099

void jsSort()
{
  int i,j,data;
  for(i=0;i<199;i++)
    for(j=i+1;j<200;j++)
      { if(aa[i]00>aa[j]00)
          { data=aa[i];
            aa[i]=aa[j];
            aa[j]=data;
           }
       else
         if(aa[i]00==aa[j]00)
          if(aa[i]            { data=aa[i];
             aa[i]=aa[j];
             aa[j]=data;
           }
      }
  for(i=0;i<10;i++)
  bb[i]=aa[i];
}


void jsSort()
{
  int i,j;
  int t;
  for(i=0;i<200;i++)
    for(j=i+1;j<200;j++)
      if(aa[i]00>aa[j]00)
        {
          t=aa[i];
          aa[i]=aa[j];
          aa[j]=t;
        }
      else
         if(aa[i]00==aa[j]00)
           if (aa[i]             {
              t=aa[i];
              aa[i]=aa[j];
              aa[j]=t;
            }
       for(i=0;i<10;i++)
         {
           bb[i]=aa[i];
         }
}

2.已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出千位数上的数加个位数等于百位数上的数加十位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及不满足此条件的四位数平均值pjz2,最后调用写函数把结果输出到OUT.DAT文件。
例如:6712,6+2=7+1,则该数满足条件计算平均值pjz1,且个数cnt=cnt+1。8129,8+9<>1+2,则该数不满足条件计算平均值pjz2.
jsvalue()
{
  int i,g,s,b,q,k=0;
  for(i=0;i<300;i++)
   { g=a[i];
     s=a[i]0/10;
     b=a[i]/100;
    q=a[i]/1000;
    if((q+g)==(s+b)) {cnt++;pjz1+=a[i];}
    else {k++;pjz2+=a[i];}
   }
pjz1/=cnt;
pjz2/=k;
}
3.已知数据文件IN.DAT中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到OUT.DAT文件。
jsvalue()
{
  int i,j,temp;
  for(i=0;i<300;i++)
    if(isP(a[i])) b[cnt++]=a[i];
  for(i=1;i    { temp=b[i];
      j=i-1;
      while(j>=0&&temp        b[j+1]=b[j--];
        b[j+1]=temp;
    }
}

 

上下文章:

 

上一篇文章: 谈二级C语言笔试应试技巧 下一篇文章: 三级的四个类别看看你适合哪个

相关文章:

  • JSP+AJAX三级级联及更多级的实现
  • 中国国家计算机病毒中心监测发现蠕虫新变种
  • 09年全国计算机等级考试更新7门教材
  • 确保计算机安全 个人用户责无旁贷
  • 计算机病毒中心:重视微软高危漏洞补丁程序

相关软件:

  • 计算机等级考试训练模拟软件(三级数据库技术) V1.01
  • 全国计算机等级考试二级VFP上机考试模拟 V1.0
  • 全国计算机等级考试模拟软件(2006年全年使用)二级Visual Basic V9.0
  • 全国计算机等级考试第21次全真模拟系统 20050311
  • 计算机等级考试辅导软件(二级C) 1.1
  • 全国专业技术人员计算机应用能力考试模拟 2.1

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

计算机等级考试分类导航

  • 计算机等级考试动态
  • 计算机一级考试
  • 计算机二级考试
  • 计算机三级考试
  • 计算机四级考试

本类经典文章推荐

  • 全国计算机等级考试三级网络技术(...
  • 三级网络技术复习笔记(第1-2章)
  • 三级笔试样题(PC技术)
  • 三级数据库技术样题
  • 三级网络技术复习笔记(5-7)
  • 三级网络技术复习笔记(第3-4章)
  • 笔试样题(网络技术)
  • 机考如何避免范围性错误
  • 2003年最新三级网络模拟题(2)
  • 全国计算机等级考试三级网络技术部...

计算机等级考试动态阅读排行

  • 完整的计算机等级考试上机模拟系统
  • 9月17日计算机等级考试二级VF答案
  • 历年操作系统论述题及答案(2)
  • 计算机等级考试:VFp练习题1
  • 全国计算机等级考试三级网络技术(...
  • 计算机等级考试:VFp练习题2
  • 2005年全国计算机等级考试全真模拟...
  • 计算机二级VB软件环境、考试时间、...
  • 全国计算机等级考试报名时间、级别...
  • 三级网络技术复习笔记(第1-2章)

计算机等级考试阅读总排行

  • 全国计算机等级考试一级模拟试题01
  • 全国计算机等级考试一级模拟试题10
  • 全国计算机等级考试一级模拟试题08
  • 全国计算机等级考试一级模拟试题02
  • 全国计算机等级考试一级考试最新模...
  • 全国计算机等级考试一级模拟试题07
  • 一级(WINDOWS)试题解析-Word篇
  • 全国计算机等级考试上机考试应试技...
  • 全国计算机等级考试一级模拟试题03
  • 全国计算机等级考试一级模拟试题06

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有