`
mmdev
  • 浏览: 12888702 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

(4)巩固一下C语言基础知识,谁动手,谁收获。

 
阅读更多

问题13:
编程解决如下问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡, 问鸡翁,鸡母,鸡雏各几何?(20分)

问题14:
编程实现:有二维数组a[3][3]={{1.3,2.7,3.6},{2,3,4.7},{3,4,1.27}},将数组a的每一行元素均除以该行上绝对值最大的元素,按行输出新数组。(20分)

问题15:
编程:设x、y取值为区间[1,10]的整数, f(x,y)=(3x-2y)/(x+y),求使f(x,y)取最小值的x1、y1,要求使用自定义函数实现f(x,y)功能。(20分)


问题16:
编写函数fun,其功能是:在字符串中所有数字字符前加一个“*”字符,要求通过指针实现。(20分)


问题17:
编程:已知学生记录由学号和学习成绩构成,N名学生的记录已存入结构体数组中,找出成绩最低的学生,并输出这个学生的信息,已知学生信息如下。(20分)

A01,81;A02,89;A03,66;A04,87;A05,77

A06,90;A07,79;A08,61;A09,80;A10,71


问题13实现代码:

/* author:宋金时 */
/* date:2011/11/02 */

#include "Stdio.h"
#include "Conio.h"

#define TOTAL 100
#define GONG 5
#define MU 3
#define XIAO 1/3

int main(void)
{
 /* 此处添加你自己的代码 */
 int m_i,m_j,m_k;
 puts("GONG MU XIAO");
 for(m_i=1;m_i<TOTAL;m_i++)
 {
    for(m_j=1;m_j<TOTAL;m_j++)
    {
        for(m_k=1;m_k<TOTAL;m_k++)
        {
            if(((m_i+m_j+m_k)==100)&&((m_i*GONG+m_j*MU+m_k*XIAO)==100))
                printf("%d %d %d\n",m_i,m_j,m_k);
        }
    }
 }
  getch();
  return 0;
}

问题14实现代码:
/* author:宋金时 */
/* date:2011/11/02 */

#include "Stdio.h"
#include "Conio.h"
#include "math.h"

int main(void)
{
 /* 此处添加你自己的代码 */
 float arr_num[3][3]={{1.3,2.7,3.6},{2,3,4.7},{3,4,1.27}};
 int m_i,m_j,abs_max;
 for(m_i=0;m_i<3;m_i++)
 {
    abs_max = 0;
    for(m_j=0;m_j<3;m_j++)
    {
        if(fabs(arr_num[m_i][m_j])>fabs(arr_num[m_i][abs_max]))
            abs_max = m_j;
    }
    for(m_j=0;m_j<3;m_j++)
    {
        arr_num[m_i][m_j]/=arr_num[m_i][abs_max];
        printf("%f ",arr_num[m_i][m_j]);
    }
    printf("\n");
 }
  getch();
  return 0;
}

问题15实现代码:
/* author:宋金时 */
/* date:2011/11/02 */

#include "Stdio.h"
#include "Conio.h"

double f(int x,int y);

int main(void)
{
 double m_min;
 int m_i,m_j,m_x,m_y;
 m_min = f(1,1);
 for(m_i=0;m_i<10;m_i++)
 {
    for(m_j=0;m_j<10;m_j++)
    {
        if(m_min>f(m_i+1,m_j+1))
        {
        m_min = f(m_i+1,m_j+1);
        m_x = m_i+1;
        m_y = m_j+1;
        }
    }
 }
 printf("x=%d y=%d\n",m_x,m_y);
  getch();
  return 0;
}

double f(int x , int y)
{
    return ((double)(3*x-2*y)/(double)(x+y));
}

问题16实现代码:
/* anthor:宋金时 */
/* date:2011/11/01 */

#include "Stdio.h"
#include "Conio.h"

#define N 20

int main(void)
{
 /* 此处添加你自己的代码 */
 char str[N],*s_p,*temp_p,*s_new;
 puts("please input a string:");
 gets(str);
 s_p = str;
 while(*s_p!='\0')
 {
    if((*s_p>='0')&&(*s_p<='9'))
    {
        s_new = (char*)malloc(strlen(s_p)+1);
        strcpy(s_new,s_p);
        *s_p='\0';
        strcat(str,"*");
        s_p++;
        strcat(str,s_new);
        free(s_new);
        s_new = NULL;
    }
    s_p++;
 }
 puts(str);
  getch();
  return 0;
}

问题17实现代码:
/* author:宋金时 */
/* date:2011/11/02 */

#include "Stdio.h"
#include "Conio.h"

#define N 10

typedef struct student
{
    char num[20];
    int score;
}stu;

int main(void)
{
 /* 此处添加你自己的代码 */
  stu arr_stu[N]={{"A01",81},{"A02",89},{"A03",66},\
  {"A04",87},{"A05",77},{"A06",90},{"A07",79},{"A08",61},\
  {"A09",80},{"A10",71}};
  int m_i,m_pos=0;
  for(m_i=0;m_i<N;m_i++)
  {
      if(arr_stu[m_i].score<arr_stu[m_pos].score)
      {
        m_pos = m_i;
      }
  }
  puts("number score");
  printf("%s %d\n",arr_stu[m_pos].num,arr_stu[m_pos].score);
  getch();
  return 0;
}



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics