#define NUMMONTHS 12
#define NUMYEARS 5
#include <stdio.h>
void inputdata( ) ;
void printdata( ) ;
void sumdata( ) ;
float Raindata[ NUMYEARS] [ NUMMONTHS] , sum;
char years[ NUMYEARS] [ 5 ] = { "2011" , "2012" , "2013" , "2014" , "2015" } ;
char months[ NUMMONTHS] [ 12 ]
= { "Jan" , "Feb" , "Mar" , "Apr" , "May" , "Jun" , "Jul" , "Aug" , "Sep" , "Oct" , "Nov" , "Dec" } ;
int main ( )
{
char enterData = 'y' ;
printf ( "Do you want to input Precipatation data? (y for yes)\n " ) ; if ( enterData == 'y' )
{
inputdata( ) ;
printdata( ) ;
}
if ( enterData == 's' )
{
sumdata( ) ;
}
else {
printf ( "No data was input at this time\n " ) ; }
printf ( "Please try the Precipitation program again. \n " ) ; return 0 ;
}
void inputdata( ) {
float Rain= 1.0 ;
for ( int year= 0 ; year < NUMYEARS; year++ ) {
for ( int month= 0 ; month< NUMMONTHS; month++ ) {
printf ( "Enter rain for %d, %d:\n " , year
+ 1 , month
+ 1 ) ; Raindata[ year] [ month] = Rain;
}
}
}
void printdata( ) {
printf ( "year\t month\t rain\n " ) ; for ( int year= 0 ; year < NUMYEARS; year++ ) {
for ( int month= 0 ; month< NUMMONTHS; month++ ) {
printf ( "%s\t %s\t %5.2f\n " , years
[ year
] , months
[ month
] , Raindata
[ year
] [ month
] ) ; }
}
}
void sumdata( ) {
sum = 0.0 ;
for ( int year= 0 ; year < NUMYEARS; year++ ) {
sum = 0.0 ;
printf ( "Rain for %d:\n " , year
+ 1 ) ; for ( int month= 0 ; month< NUMMONTHS; month++ ) {
printf ( "Enter Rain for the year:\n " ) ; }
sum += Rain;
printf ( "sum of %s\t %f\n " , year
, sum
) ; }
}
if ( Rain< 0 )
{
return 0 ;
}
I2RlZmluZSBOVU1NT05USFMgMTIKI2RlZmluZSBOVU1ZRUFSUyA1CiNpbmNsdWRlIDxzdGRpby5oPiAgCnZvaWQgaW5wdXRkYXRhKCk7CnZvaWQgcHJpbnRkYXRhKCk7CnZvaWQgc3VtZGF0YSgpOwpmbG9hdCBSYWluZGF0YVtOVU1ZRUFSU11bTlVNTU9OVEhTXSxzdW07CmNoYXIgeWVhcnNbTlVNWUVBUlNdWzVdID0geyIyMDExIiwiMjAxMiIsIjIwMTMiLCIyMDE0IiwiMjAxNSJ9OwpjaGFyIG1vbnRoc1tOVU1NT05USFNdWzEyXSAKPXsiSmFuIiwiRmViIiwiTWFyIiwiQXByIiwiTWF5IiwiSnVuIiwiSnVsIiwiQXVnIiwiU2VwIiwiT2N0IiwiTm92IiwiRGVjIn07CmludCBtYWluICgpCnsgIAoJCgljaGFyIGVudGVyRGF0YSA9ICd5JzsKCXByaW50ZigiRG8geW91IHdhbnQgdG8gaW5wdXQgUHJlY2lwYXRhdGlvbiBkYXRhPyAoeSBmb3IgeWVzKVxuIik7CglzY2FuZigiJWMiLCZlbnRlckRhdGEpOwoJaWYgKGVudGVyRGF0YSA9PSAneScpIAoJeyAgICAgCgkJICBpbnB1dGRhdGEoKTsKCSAgICAgIHByaW50ZGF0YSgpOwoJICAgICAgfQoJaWYgKGVudGVyRGF0YSA9PSAncycpCgl7CgkJc3VtZGF0YSgpOwoJfQoJICAgICAgZWxzZSB7CgkgICAgICAJcHJpbnRmKCJObyBkYXRhIHdhcyBpbnB1dCBhdCB0aGlzIHRpbWVcbiIpOwoJICAgICAgCX0KCSAgICAgIAlwcmludGYoIlBsZWFzZSB0cnkgdGhlIFByZWNpcGl0YXRpb24gcHJvZ3JhbSBhZ2Fpbi4gXG4iKTsKCSAgICAgIAlyZXR1cm4gMDsKCSAgICAgIAl9IAoJICAgICAgCXZvaWQgaW5wdXRkYXRhKCkgeyAgCgkgICAgICAJCWZsb2F0IFJhaW49MS4wOwoJICAgICAgCSAgICBmb3IgKGludCB5ZWFyPTA7eWVhciA8IE5VTVlFQVJTOyB5ZWFyKyspIHsKCSAgICAgIAkgICAgCWZvciAoaW50IG1vbnRoPTA7IG1vbnRoPCBOVU1NT05USFM7IG1vbnRoKyspIHsKCSAgICAgIAkgICAgCQlwcmludGYoIkVudGVyIHJhaW4gZm9yICVkLCAlZDpcbiIsIHllYXIrMSwgbW9udGgrMSk7CgkgICAgICAJICAgIAkJc2NhbmYoIiVmIiwmUmFpbik7CgkgICAgICAJICAgIAkJUmFpbmRhdGFbeWVhcl1bbW9udGhdPVJhaW47CiAgICAgIH0gICAgCiAgICAgIH0gCiAgICAgIH0gCiAgICAgIHZvaWQgcHJpbnRkYXRhKCl7IAogICAgICAJcHJpbnRmICgieWVhclx0IG1vbnRoXHQgcmFpblxuIik7CiAgICAgIAlmb3IgKGludCB5ZWFyPTA7eWVhciA8IE5VTVlFQVJTOyB5ZWFyKyspIHsKICAgICAgCQlmb3IgKGludCBtb250aD0wOyBtb250aDwgTlVNTU9OVEhTOyBtb250aCsrKSB7CiAgICAgIAkJCXByaW50ZigiJXNcdCAlc1x0ICU1LjJmXG4iLCB5ZWFyc1t5ZWFyXSxtb250aHNbbW9udGhdLFJhaW5kYXRhW3llYXJdW21vbnRoXSk7CiAgICAgIAkJfQogICAgICAJfQogICAgICB9CiAgICAgIHZvaWQgIHN1bWRhdGEoKXsKICAgICAgCXN1bSA9MC4wOwogICAgICAJZm9yIChpbnQgeWVhcj0wO3llYXIgPCBOVU1ZRUFSUzsgeWVhcisrKSAJewogICAgIHN1bSA9MC4wOwogICAgICBwcmludGYoIlJhaW4gZm9yICVkOlxuIiwgeWVhcisxKTsKICAgICAgZm9yIChpbnQgbW9udGg9MDsgbW9udGg8IE5VTU1PTlRIUzsgbW9udGgrKykgewogICAgICBwcmludGYoIkVudGVyIFJhaW4gZm9yIHRoZSB5ZWFyOlxuIik7CiAgICAgIHNjYW5mKCIlZiIsJlJhaW4pOwogICAgICB9CiAgICAgIHN1bSArPVJhaW47CiAgICAgIAkJCiAgICAgIAkJcHJpbnRmKCJzdW0gb2YgJXNcdCVmXG4iLHllYXIsc3VtKTsKICAgICAgCX0KICAgICAgCQl9CiAgICBpZiAoUmFpbjwgMCkKICAgIHsKICAgICAgCQkKICAgICAgCQkJcmV0dXJuIDA7CiAgICAgIAkJfQ==
stdin
cwoxLjIKMi4yCjMuMwoyLjIKMTAuMgoxMi4yCjIuMwowLjQKMC4yCjEuMQoyLjEKMC40CjEuMQoyLjIKMy4zCjIuMgoxMC4yCjEyLjIKMi4zCjAuNAowLjIKMS4xCjIuMQowLjQKMS4xCjIuMgozLjMKMTAuMgoxMi4yCjIuMwowLjQKMC4yCjEuMQoyLjEKMC40CjEuMQoyLjIKMy4zCjIuMgoxMC4yCjEyLjIKMi4zCjIuMQowLjQKMC4yCjEuMQoyLjEKMC40CjEuMQoyLjIKMy4zCjIuCjEwLjIKMTIuMgoyLjMKMC4yCjAuMgoxLjEKMi4xCjAuNA==
s
1.2
2.2
3.3
2.2
10.2
12.2
2.3
0.4
0.2
1.1
2.1
0.4
1.1
2.2
3.3
2.2
10.2
12.2
2.3
0.4
0.2
1.1
2.1
0.4
1.1
2.2
3.3
10.2
12.2
2.3
0.4
0.2
1.1
2.1
0.4
1.1
2.2
3.3
2.2
10.2
12.2
2.3
2.1
0.4
0.2
1.1
2.1
0.4
1.1
2.2
3.3
2.
10.2
12.2
2.3
0.2
0.2
1.1
2.1
0.4
compilation info
prog.c: In function ‘sumdata’:
prog.c:57:19: error: ‘Rain’ undeclared (first use in this function)
scanf("%f",&Rain);
^~~~
prog.c:57:19: note: each undeclared identifier is reported only once for each function it appears in
prog.c:61:25: warning: format ‘%s’ expects argument of type ‘char *’, but argument 2 has type ‘int’ [-Wformat=]
printf("sum of %s\t%f\n",year,sum);
^
prog.c: At top level:
prog.c:64:5: error: expected identifier or ‘(’ before ‘if’
if (Rain< 0)
^~
stdout