码迷,mamicode.com
首页 > 其他好文 > 详细

实验四

时间:2019-04-26 00:31:16      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:运算   http   int   div   5.0   col   占用   2.0   利用   

Part1

#include <stdio.h>
int main() {
double a[5] = {1.0,2.0,3.0,4.0,5.0};
int i;
for(i=0; i<5; i++)
printf("%d: %lf\n", &a[i], a[i]);
return 0;
}

技术图片

#include <stdio.h>
int main() {
char a[5] = {h,e,l,l,o}; 
int i;
for(i=0; i<5; i++)
printf("%d: %c\n", &a[i], a[i]); 
return 0;
}

技术图片

元素字节与数组类型相关,定义为char类型每个元素1字节 double类型为8字节 int类型为4字节,存放连续。

Part2

#include <stdio.h>                                 
int main() {
int a[5];    
a[0] = 1;   
a[1] = 9;
a[2] = 8;
a[3] = 6;
a[4] = 0;
printf("a[0] = %d\n", a[0]);
printf("a[1] = %d\n", a[1]);
printf("a[2] = %d\n", a[2]);
printf("a[3] = %d\n", a[3]);
printf("a[4] = %d\n", a[4]);
 return 0;}

当对所有数组元素初始化的时候,可以省略数组大小,

利用数组下标的变化特性,使用循环,使得输出数组元素的代码更简洁。

sizeof是c语言中的运算符,用于计算数据占用的字节数。表达式sizeof(a) / sizeof(a[0])用于计算数 组元素的个数。

c语言支持在对数组初始化时,只初始化一部分元素。这种情形下,剩余没有被初始化的元素值,系统自动 设为0。

Part3

#include <stdio.h>
const int N=5; 
void init(int a[],int n, int value);  
int main() {
int b[N],i;
init(b,N,-1);  
for(i=0;i<N;i++)
printf("%3d",b[i]);
return 0;
}
void init(int a[], int n, int value) {
int i;
for(i=0;i<n;i++)
a[i] = value;
}

 

技术图片

Part4技术图片

#include <stdio.h> 
const int N=5; 
void bubbleSort( int [], int); 
int main() {
int i,a[N];    
printf("请输入%d个整型数据: \n", N);
for(i=0; i<N; i++)
scanf("%d",&a[i]); 
printf("排序前的数据: \n");
for(i=0; i<N; i++)  
printf("%d ",a[i]); 
printf("\n"); 
bubbleSort(a,N);
printf("排序后的数据: \n"); 
for(i=0; i<N; i++)
printf("%d ",a[i]);
printf("\n");
return 0; 
}
void bubbleSort( int x[], int n) {
int i,j,t;
for (i=0; i<n-1; i++) {    
for(j=0; j<n-1-i; j++) {
if( x[j] > x[j+1] ) {
t = x[j]; 
x[j] = x[j+1]; 
x[j+1] = t;
}
}
}
}

Part5

#include <stdio.h>
int findMax(int a[], int n);
const int N=5;
int main() {
int a[N];
int max, i;
printf("输入%d个整数: \n", N);
for(i=0;i<N;i++)
scanf("%d",&a[i]);
max=findMax(a,N);
printf("数组a中最大元素值为: %d\n\n", max);
return 0;
}
int findMax(int a[],int n)
{
int i,max;
max=a[0];
for(i=0;i<N;i++)
{
if(a[i]>max)
max=a[i];
}
return max;
}技术图片

 

 

#include <stdio.h>
const int N=4;
void output(char x[], int n);    
void rank(char x[]) ;
int main() {
char string[N] = {2,0,1,9};
int i;    
printf("排序前: \n");
output(string, N);
rank(string);
printf("\n排序后: \n"); 
output(string, N);    
printf("\n");    
return 0;    
} 
void output(char x[], int n) {
int i;    
for(i=0; i<N; i++)
printf("%c", x[i]);
} 
void rank(char x[])
{
int num,i,j;
char t;
num=sizeof(x)/sizeof(char);
for(j=0;j<num-1;j++)
for(i=0;i<num-j-1;i++)
if(x[i]<x[i+1])
{
t=x[i];
x[i]=x[i+1];
x[i+1]=t;
}
}

技术图片

过程中问题很大 借鉴了很多,需要努力

实验四

标签:运算   http   int   div   5.0   col   占用   2.0   利用   

原文地址:https://www.cnblogs.com/a201883300049/p/10771757.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!